<span>Centos7安装设置MySQL以及主从配置详细</span> - Go语言中文社区

<span>Centos7安装设置MySQL以及主从配置详细</span>


一、Mysql服务器安装:

1、下载安装mysql的yum Repository:

[root@bogon soft]# mkdir /usr/local/soft/mysql
[root@bogon soft]# cd /usr/local/soft/mysql
[root@bogon mysql]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

上边下载了yum Repository,接下来即可安装yum Repository:

[root@bogon mysql]# yum -y install mysql57-community-release-el7-10.noarch.rpm

2、安装MySQL服务器:

[root@bogon mysql]# yum -y install mysql-community-server

说明mysql已安装完成了。

二、Mysql服务器设置:

1、启动mysql服务(任何目录下都可以):

[root@bogon ~]# systemctl start mysqld.service

设置开机启动:

[root@bogon ~]# systemctl enable mysqld.service

2、查看mysql服务器运行状态:

[root@bogon ~]# systemctl status mysqld.service

3、获取MySQL默认的root用户的密码:

[root@bogon ~]# grep "password" /var/log/mysqld.log

根据上边的提示,root的密码为:/c8dHFj8GLoz

4、进入数据库:

[root@bogon ~]# mysql -uroot -p

输入上边的密码进入。

5、修改root账号的密码:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'YOU/password@121';
YOU/password@121替换为自己定义的密码,注意需要小写和大写以及符号组成,不然会修改失败。

6、创建用户以及分配权限:

语法命令:

CREATE USER 'username'@'host' IDENTIFIED BY 'password';
username:更换为你的用户名。
host:授权的地址,如果是本地可使用localhost,也可直接指定ip,全部授权使用 %。
password:更换为你的密码

例如:
mysql> CREATE USER 'youname'@'%' IDENTIFIED BY 'YOU/password@121';

7、用户账号授权

语法命令:

GRANT privileges ON databasename.tablename TO 'username'@'host'

privileges:用户的操作权限,如果授予所有权限则使用all.

databasename:数据库名称。tablename:表名。如果要给该用户授予对所有操作权限则可用*表示,例如*.*

例如:

test_admin2用户设置test_db的只读(select)权限
mysql> GRANT SELECT ON test_db.* TO 'test_admin2'@'%';

 

  设置youname用户的所有权限,并且开启远程访问:

mysql> grant all privileges on *.* to 'youname'@'%' identified by 'YOU/password@121' with grant option;

其中的 % 表示 开启所有的权限,如果只开启某一个ip,那么把%替换为ip地址就可。

刷新权限(设置完成后,必须进行设置):

mysql> flush privileges;

查看用户授权信息:

mysql> SHOW GRANTS FOR 'youname'@'%';

8、设置更改mysql语言:

查看,mysql状态:

mysql> status

根据上图看出Server 和Db的编码不是utf-8。

先退出当前mysql

mysql> exit

编辑my.cnf:

[root@bogon ~]# vim /etc/my.cnf

键盘输入 “i” 进入编辑状态,插入以下内容:

[client]
# 默认编码为utf8
default-character-set=utf8

......

# 设置服务编码
character-set-server=utf8
# 设置校对规则
collation-server=utf8_general_ci

图下图:

 键盘按下ESC退出编辑模式,键盘输入“:wq”保存并退出,重启mysql:

[root@bogon ~]# service mysqld restart

再次查看,mysql状态:

[root@bogon ~]# mysql -uroot -p

输入密码后查询状态:

mysql> status

输出如图所示:

说明修改过来了。

退出mysql:

mysql> exit

9、防火墙开放端口(3306):

[root@bogon ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent

防火墙重起:

[root@bogon ~]# firewall-cmd --reload

10、mysql服务器常用命令:

查看MySQL运行状态

systemctl status mysqld.service

关闭MySQL服务

systemctl stop mysqld.service

启动MySQL命令:

systemctl start mysqld.service

重启MySQL命令:

systemctl restart mysqld.service

三、主从设置:

MySQL 主从也被称为 复制、 AB 复制,简单来说, 就是 A和B两台服务器,在A 服务器上 写入数据, 服务器B上也会跟 着写入数据 两者之间的数据是同步的。

MySQL 主从是基于 binlog的,主必须开启 binlog 才能进行主从。

现在准备两台服务器,上边都安装了mysql。

主:192.168.30.110

从:192.168.30.111

1、设置MySQL主:

编辑my.cnf:

[root@bogon ~]# vim /etc/my.cnf

键盘输入 “i” 进入编辑状态,插入以下内容:

server-id=110
log_bin=centos7

如下图所示:

 

 

键盘按下ESC退出编辑模式,键盘输入“:wq”保存并退出,重启mysql:

[root@bogon ~]# service mysqld restart

重启以后,mysql的数据目录下(编辑my.conf时上图中的datadir的目录)会生成两个文件:centos7.index索引文件、centos7.000001日志文件。

 

创建用户,主从同步使用:

[root@bogon bin]# mysql -uroot -p
mysql> CREATE USER 'masterSlaveUser'@'129.168.30.%' IDENTIFIED BY 'weiLAI@119';
mysql> grant all privileges on *.* to 'masterSlaveUser'@'129.168.30.%' identified by 'weiLAI@119';

第一句:创建用户名为:masterSlaveUser,授权的地址:129.168.30.%    %表示所有,密码:weiLAI@119

第二句:授权该账号在地址129.168.30.%下的所有权限。

刷新权限(设置完成后,必须进行设置):

mysql> flush privileges;

查询binlog日志需要监听的端口,从需要使用:

mysql> SHOW MASTER STATUS;

如图所示:

 

 

2、设置MySQL从:

编辑my.cnf:

[root@bogon ~]# vim /etc/my.cnf

键盘输入 “i” 进入编辑状态,插入以下内容:

server-id=111

备注:

此处的server-id=111是从的地址,和主不同。

此处不需要配置log_bin,从不需要二进制日志文件。

键盘按下ESC退出编辑模式,键盘输入“:wq”保存并退出,重启mysql:

[root@bogon ~]# service mysqld restart

 

重点来了:

连接主数据库:

[root@bogon bin]# mysql -uroot -p

change master to master_host='192.168.30.110',
master_port=3306,
master_user='masterSlaveUser',
master_password='weiLAI@119',
master_log_file='centos7.000001',
master_log_pos=875;

备注:

(1)第一句:连接主mysql,地址为:192.168.30.110

(2)连接的端口、使用的账号、密码

(3)后边两个是日志文件和端口,此处的875就是主查看日志的端口

如图所示:

 

 然后输入一下命令,启动从:

mysql> start slave;

查看是否成功:

mysql> show slave statusG

Slave_IO_ Running和Slave_SQL _Running 都为yes,即为成功。

 

主从同步必须关闭防火墙,否则不会显示 Yes

 

至此mysql安装和配置完成。

 

版权声明:本文来源博客园,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://www.cnblogs.com/yanlaile/p/14569757.html
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-04-07 20:28:57
  • 阅读 ( 1263 )
  • 分类:数据库

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢