查看是否安装了mysql,查看系统是否自带了mysql包 若有删除

查看系统是否自带了mysql包 若有删除,还需要在官网下载3个包,系统环境为 CentOS 6.8,查看是否以及安装过MySql,查看是否安装了mysql,1.备份原来的源,使得下载速度能够增加.

图片 1
# less /root/.mysql 再按Tab键 再按Enter 冒号后面的一串儿字符就是 mysql的密码

2.下载安装 MySQL-server,MySQL-shared-compat


除了 MySQL 官方网站,也可从国内的一些镜像网站下载 MySQL 的 rpm
安装包,这是 sohu 的镜像地址:
http://mirrors.sohu.com/mysql/MySQL-5.6/

下载安装 MySQL-bundle:

wget http://mirrors.sohu.com/mysql/MySQL-5.6/MySQL-5.6.30-1.el6.x86_64.rpm-bundle.tar

解压:
[root@lamp1 ~]# tar -xvf MySQL-5.6.30-1.el6.x86_64.rpm-bundle.tar
MySQL-devel-5.6.30-1.el6.x86_64.rpm
MySQL-shared-5.6.30-1.el6.x86_64.rpm
MySQL-test-5.6.30-1.el6.x86_64.rpm
MySQL-embedded-5.6.30-1.el6.x86_64.rpm
MySQL-client-5.6.30-1.el6.x86_64.rpm
MySQL-shared-compat-5.6.30-1.el6.x86_64.rpm
MySQL-server-5.6.30-1.el6.x86_64.rpm

其中包括 MySQL 客户端,服务端,开发包等。

现在尝试安装 MySQL-server,会遇到冲突:

file /usr/share/mysql/czech/errmsg.sys from install of MySQL-server-5.6.30-1.el6.x86_64
conflicts with file from package mysql-libs-5.1.73-7.el6.x86_64

原来是与系统上安装的 mysql-libs 包冲突了,看看其中有些什么:

[root@lamp1 ~]# rpm -ql mysql-libs
/etc/ld.so.conf.d/mysql-x86_64.conf
/etc/my.cnf
/usr/lib64/mysql
/usr/lib64/mysql/libmysqlclient.so.16
/usr/lib64/mysql/libmysqlclient.so.16.0.0
/usr/lib64/mysql/libmysqlclient_r.so.16
/usr/lib64/mysql/libmysqlclient_r.so.16.0.0

主要是几个依赖库,它被系统上的 postfix 包所依赖,所以不能删除,通过下载
MySQL-compat 可以解决冲突:

wget http://mirrors.sohu.com/mysql/MySQL-5.6/MySQL-shared-compat-5.6.30-1.el6.x86_64.rpm

其中包含有 mysql-libs 所提供的依赖包

[root@lamp1 ~]# rpm -qpl MySQL-shared-compat-5.6.30-1.el6.x86_64.rpm
warning: MySQL-shared-compat-5.6.30-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
/usr/lib64/libmysqlclient.so.12
/usr/lib64/libmysqlclient.so.12.0.0
/usr/lib64/libmysqlclient.so.14
/usr/lib64/libmysqlclient.so.14.0.0
/usr/lib64/libmysqlclient.so.15
/usr/lib64/libmysqlclient.so.15.0.0
/usr/lib64/libmysqlclient.so.16
/usr/lib64/libmysqlclient.so.16.0.0
/usr/lib64/libmysqlclient_r.so.12
/usr/lib64/libmysqlclient_r.so.12.0.0
/usr/lib64/libmysqlclient_r.so.14
/usr/lib64/libmysqlclient_r.so.14.0.0
/usr/lib64/libmysqlclient_r.so.15
/usr/lib64/libmysqlclient_r.so.15.0.0
/usr/lib64/libmysqlclient_r.so.16
/usr/lib64/libmysqlclient_r.so.16.0.0

现在可删除 mysql-libs:

rpm -e mysql-libs

再尝试安装 MySQL-server:

[root@lamp1 ~]# rpm -ihv MySQL-server-5.6.30-1.el6.x86_64.rpm

安装成功了。

以默认配置启动 mysql:

service mysql start

查看 mysql 数据文件,默认在 /var/lib/mysql/ 路径下:

[root@lamp1 ~]# ll -h /var/lib/mysql/
total 109M
-rw-rw---- 1 mysql mysql   56 Jun 24 10:54 auto.cnf
-rw-rw---- 1 mysql mysql  12M Jun 24 10:54 ibdata1
-rw-rw---- 1 mysql mysql  48M Jun 24 10:54 ib_logfile0
-rw-rw---- 1 mysql mysql  48M Jun 24 10:47 ib_logfile1
-rw-r----- 1 mysql root  2.1K Jun 24 10:54 lamp1.err
-rw-rw---- 1 mysql mysql    5 Jun 24 10:54 lamp1.pid
drwx--x--x 2 mysql mysql 4.0K Jun 24 10:47 mysql
srwxrwxrwx 1 mysql mysql    0 Jun 24 10:54 mysql.sock
drwx------ 2 mysql mysql 4.0K Jun 24 10:47 performance_schema
-rw-r--r-- 1 root  root   111 Jun 24 10:47 RPM_UPGRADE_HISTORY
-rw-r--r-- 1 mysql mysql  111 Jun 24 10:47 RPM_UPGRADE_MARKER-LAST
drwxr-xr-x 2 mysql mysql 4.0K Jun 24 10:47 test

1,mysql离线安装出现:Can’t change to run as user ‘mysql’ ; Please check that the user exists!

原因:没有该用户。
解决办法:创建该用户!
例如:
添加用户:

groupadd -g 315 mysql

用户加入mysql:

useradd -u 315 -g mysql -d /usr/local/mysql -M mysql

再次输入

 ./scripts/mysql_install_db --user=mysql

成功!
图片 1

5.mongodb

用的是ubuntu,官网上有各种linux安装方法,官网地址,主要命令如下:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
//ubuntu 16.04
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

sudo apt-get update
//网速很慢,自备翻墙
sudo apt-get install -y mongodb-org

//提示缺少依赖之类的不能安装的话,就执行
sudo apt-get -f -y install

操作指令

sudo service mongod start

sudo service mongod stop

sudo service mongod restart

配置文件

/etc/mongod.conf

tar包安装法,apt速度实在太慢了,所以按照菜鸟教程里面的tar包下载安装.

curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz    # 下载
tar -zxvf mongodb-linux-x86_64-3.0.6.tgz                                   # 解压

mv  mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb                         # 将解压包拷贝到指定目录

export PATH=<mongodb-install-directory>/bin:$PATH >> /etx/profile

创建数据库
MongoDB的数据存储在data目录的db目录下,但是这个目录在安装过程不会自动创建,所以你需要手动创建data目录,并在data目录中创建db目录。

mkdir -p /data/db

启动服务端

mongod

启动客户端

mongo

简单插入数据

> db.runoob.insert({x:10})
WriteResult({ "nInserted" : 1 })
> db.runoob.find()
{ "_id" : ObjectId("5604ff74a274a611b0c990aa"), "x" : 10 }
#yum -y install libaio

# /usr/bin/mysql_install_db

注:系统环境为 CentOS 6.8

2,配置更改

更改mysql中的my.cnf文件
添加如下:
主(Master):

#任意自然数n,只要保证两台MySQL主机不重复就可以了。
server-id=1
#开启二进制日志
log-bin=mysql-bin  
#步进值auto_imcrement。一般有n台主MySQL就填n 
auto_increment_increment=2
#起始值。一般填第n台主MySQL。此时为第一台主MySQL   
 auto_increment_offset=1 
#忽略指定的数据库 
binlog-ignore=mysql   
binlog-ignore=information_schema  
#要同步的数据库(多个可以使用逗号隔开),默认所有库
replicate-do-db=DBTEST  

从(Slave):

server-id=2
log-bin=mysql-bin
auto_increment_increment=2
auto_increment_offset=2
replicate-do-db=DBTEST 

更改完配置之后重启!

2.配置tomcat

tomcat和window下差不多,下载压缩包,解压后进入bin文件夹直接启动就好了.


若报错 安装libaio包 在安装

目录

五、MySql主从搭建

主从搭建参考:

说明:搭建MySql的主从时,如复制名称出现了错误,那么尝试使用用手动输入命令。

6.mitmproxy

平台是ubuntu,该软件最新版需要python3的支持,所以需要安装python3

sudo apt-get install python3-pip python3-dev libffi-dev libssl-dev libtiff5-dev libjpeg8-dev zlib1g-dev libwebp-dev
sudo pip3 install mitmproxy  # or pip3 install --user mitmproxy

操作指令
sudo mitmproxy 启动

#启动时
-R URL -p 端口     把该端口的请求都反向代理到该url

#启动后
操作类似vim方式.
其中
i 配置拦截器
f 配置过滤器
r 重放链接
e 编辑链接
z 清空屏幕
d 删除当前记录

证书安装地址

mitm.it    需要启动该服务

配置文件

/home/user/.mitmproxy  

进入mysql修改密码

5.修改配置文件


MySQL-5.6 生成的配置文件在 /usr/my.cnf,内容非常简单,需要重新创建。

可通过 mysqld –verbose –help 命令查看 mysqld 读取的配置文件:

[root@lamp1 ~]# mysqld --help --verbose | less
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf

我们可将 /usr/my.cnf 移动到 /etc/my.cnf,添加如下内容:

[root@lamp1 ~]# mv /usr/my.cnf /etc/my.cnf
[root@lamp1 ~]# vi /etc/my.cnf  
binlog-format=ROW
log-bin=master-bin.log
log-slave-updates=true
gtid-mode=on
enforce-gtid-consistency=true
master-info-repository=TABLE
relay-log-info-repository=TABLE
sync-master-info=1
slave-parallel-workers=2
binlog-checksum=CRC32
master-verify-checksum=1
slave-sql-verify-checksum=1
binlog-rows-query-log_events=1
server-id=1
report-port=3306
port=3306
#datadir=/mydata/data
socket=/tmp/mysql.sock
report-host=master.test.com

下面需要重新初始化 mysql 的数据文件。

关闭 mysql,删除全部数据文件,并重新初始化:

[root@lamp1 ~]# service mysql stop
[root@lamp1 ~]# rm -rf /var/lib/mysql/*
[root@lamp1 ~]# mysql_install_db --user=mysql --datadir=/var/lib/mysql
[root@lamp1 ~]# ll /var/lib/mysql/
total 110604
-rw-rw---- 1 mysql mysql 12582912 Jun 24 11:12 ibdata1
-rw-rw---- 1 mysql mysql 50331648 Jun 24 11:12 ib_logfile0
-rw-rw---- 1 mysql mysql 50331648 Jun 24 11:12 ib_logfile1
drwx------ 2 mysql mysql     4096 Jun 24 11:12 mysql
drwx------ 2 mysql mysql     4096 Jun 24 11:12 performance_schema
drwx------ 2 mysql mysql     4096 Jun 24 11:12 test

这又生成 /usr/my.cnf,删除它,然后启动 mysql:

rm -f /usr/my.cnf
service mysql start

这次可直接登陆,没有密码,因为我们做了重新初始化:

[root@lamp1 ~]# mysql
mysql> SELECT User,Host,Password FROM mysql.user;
+------+-----------+----------+
| User | Host      | Password |
+------+-----------+----------+
| root | localhost |          |
| root | lamp1     |          |
| root | 127.0.0.1 |          |
| root | ::1       |          |
|      | localhost |          |
|      | lamp1     |          |
+------+-----------+----------+

现在可按照前面所讲的修改 root 密码。

我们可创建一个可远程连接的普通用户,赋予其对所有库有查询权限,允许从本地域网连接:

mysql> GRANT SELECT ON *.* TO 'tuser'@'192.168.0.%' IDENTIFIED BY 'guli123';
Query OK, 0 rows affected (0.02 sec)

mysql> SELECT User,Host,Password FROM mysql.user;
+-------+----------------+-------------------------------------------+
| User  | Host           | Password                                  |
+-------+----------------+-------------------------------------------+
| root  | localhost      |                                           |
| root  | lamp1          |                                           |
| root  | 127.0.0.1      |                                           |
| root  | ::1            |                                           |
|       | localhost      |                                           |
|       | lamp1          |                                           |
| tuser | 192.168.0.%    | *F0BC5A026769654BD0A7EFA74872CA595563919A |
+-------+----------------+-------------------------------------------+
7 rows in set (0.00 sec)

远程测试:

[root@vm_mac ~]# mysql -u tuser -h 192.168.0.171 -p
Enter password: # 输入密码
...
mysql>

测试成功。

5.查看mysql data的存放位置

SHOW VARIABLES LIKE '%datadir%'

问题1 root账户无法查看mysql表

这里我碰到了允许远程访问后,本地账户root就登录上去后,看不到mysql表了.

 mysql>show databases;

  +--------------------+

  | Database |

  +--------------------+

  | information_schema |

  | test |

  +--------------------+

只显示这个两个数据库,看不到mysql数据库

解决方法:

1.首先停止mysql服务:service mysqld stop
2.加参数启动mysql:/usr/bin/mysqld_safe --skip-grant-tables & 
然后就可以无任何限制的访问mysql了
3.root用户登陆系统:mysql -u root -p mysql
4.切换数据库:use mysql
5.显示所有的表:show tables;
这里就可以访问表了
6.查看user表中root用户的localhost权限:select * from user where user='root' and host='localhost'
7.在显示的列表中显示:root用户的localhost的权限都是'N',表示root用户本地登陆不具有权限
8.修改root用户的localhost权限:
  update user set  
  `Select_priv` = 'Y',
  `Insert_priv` = 'Y',
  `Update_priv` = 'Y',
  `Delete_priv` = 'Y',
  `Create_priv` = 'Y',
  `Drop_priv` = 'Y',
  `Reload_priv` = 'Y',
  `Shutdown_priv` = 'Y',
  `Process_priv` = 'Y',
  `File_priv` = 'Y',
  `Grant_priv` = 'Y',
  `References_priv` = 'Y',
  `Index_priv` = 'Y',
  `Alter_priv` = 'Y',
  `Show_db_priv` = 'Y',
  `Super_priv` = 'Y',
  `Create_tmp_table_priv` = 'Y',
  `Lock_tables_priv` = 'Y',
  `Execute_priv` = 'Y',
  `Repl_slave_priv` = 'Y',
  `Repl_client_priv` = 'Y',
  `Create_view_priv` = 'Y',
  `Show_view_priv` = 'Y',
  `Create_routine_priv` = 'Y',
  `Alter_routine_priv` = 'Y',
  `Create_user_priv` = 'Y',
  `Event_priv` = 'Y',
  `Trigger_priv` = 'Y'
  where user='root' and host='localhost'        //这里需注意是否有这个条件的用户
  9.更新一下:flush privileges;
  10.然后重新启动下mysql,可以解决问题了

解决方法参考:
http://blog.csdn.net/liuyifeng1920/article/details/49818851

以上所述是小编给大家介绍的Centos 6.5 下安装mysql
5.6.21的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

4.登陆并修改密码


对于 MySQL 5.6 版,初始 root 密码在 如下文件中:

[root@lamp1 ~]# cat /root/.mysql_secret
# The random password set for the root user at Fri Jun 24 10:47:26 2016 (local time): jSDBE4M3r7e40CMC

第一次使用 root 登陆,必须使用 SET PASSWORD
修改密码(想想这是如何做到的,提示:password
expired),否则无法使用任何其他指令:

[root@lamp1 ~]# mysql -u root -pjSDBE4M3r7e40CMC
mysql>

修改密码的命令:

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password');

mysql也建议你使用下面这命令修改密码,它是交互式的命令,根据提示进行一步一步地操作,很简单:

/usr/bin/mysql_secure_installation

也可以使用 shell 命令行工具 mysqladmin 进行修改:

  /usr/bin/mysqladmin -u root password 'new-password'

刚才我们已经登陆了,现在使用第一个命令修改 root 密码:

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('guli123');
Query OK, 0 rows affected (0.01 sec)

查看 mysql 账户列表:

mysql> SELECT User, Host, Password From mysql.user;
+------+-----------+-------------------------------------------+
| User | Host      | Password                                  |
+------+-----------+-------------------------------------------+
| root | localhost | *F0BC5A026769654BD0A7EFA74872CA595563919A |
| root | lamp1     | *2C98D570B669DDAADBBB051EEEDBEACA5A50BF69 |
| root | 127.0.0.1 | *2C98D570B669DDAADBBB051EEEDBEACA5A50BF69 |
| root | ::1       | *2C98D570B669DDAADBBB051EEEDBEACA5A50BF69 |
+------+-----------+-------------------------------------------+
4 rows in set (0.01 sec)

2,不知道原来的myql的root的密码;

首先,你必须要有操作系统的root权限了。要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤。
类似于安全模式登录系统。
需要先停止mysql服务

service mysql stop

/etc/init.d/mysql stop

注:如果mysql不行,就用mysqld
当提示mysql已停止后进行下一步操作

在终端命令行输入:

mysqld_safe --skip-grant-tables &  

输入mysql登录mysql系统

use mysql;
UPDATE user SET password=password("新密码") WHERE user='root';      
flush privileges;
exit;

重新启动mysql服务
这样新的root密码就设置成功了。

3.配置mysql

下载rpm包

wget http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm

更改名称

mv mysql-community-release-el7-5.noarch.rpm mysql5.7.rpm

安装rpm包

sudo rpm -Uvh mysql5.7.rpm

查看yum中可用的mysql库

yum repolist all | grep mysql

安装mysql

sudo yum install mysql-community-server

启动mysql

service mysqld start

获取临时密码

sudo grep 'temporary password' /var/log/mysqld.log

使用临时密码登入

mysql -u root

首次登陆需要修改密码,这里可能提示密码安全度不够,添加上特殊符号即可

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password'

允许远程访问

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

查看是否开启启动

systemctl is-enabled mysqld

如果未启动,则设置开机启动,这个只针对服务,上面安装mysql是以服务形式安装的.

systemctl enable mysqld

附录一些命令

启动一个服务:systemctl start postfix.service
关闭一个服务:systemctl stop postfix.service
重启一个服务:systemctl restart postfix.service
显示一个服务的状态:systemctl status postfix.service
在开机时启用一个服务:systemctl enable postfix.service
在开机时禁用一个服务:systemctl disable postfix.service
查看服务是否开机启动:systemctl is-enabled postfix.service;echo $?
查看已启动的服务列表:systemctl list-unit-files|grep enabled

查看mysql配置文件:

whereis my.cnf

//或 find / -name my.cnf

cd 上面地址

vi my.cnf

另外完全卸载mysql的话需要如下命令:

1、yum remove mysql mysql-server mysql-libs compat-mysql51

2、rm -rf /var/lib/mysql
3、rm /etc/my.cnf

查看是否还有mysql软件:
rpm -qa|grep mysql
存在的话,继续删除

创建需要下载rpm包软件包的目录:

3.安装 MySQL-client


安装 mysql 客户端:

[root@lamp1 ~]# rpm -ihv MySQL-client-5.6.30-1.el6.x86_64.rpm

二、MySql搭建遇到的错误解决办法

4.安装Redis

参考我的另一篇文章
Redis学习记录(一)–入门知识

登陆看看是否修改密码成功:

本文参考了:
http://freeloda.blog.51cto.com/2033581/1286592

4.查看mysql锁的状态

是否锁表:

 SHOW OPEN TABLES WHERE In_use > 0;

SHOW INNODB STATUS/G;

7.ubuntu下安装mysql

这个比较简单

sudo apt-get install mysql-server
apt-get isntall mysql-client
sudo apt-get install libmysqlclient-dev

安装过程中会让输入密码