我搭建主从数据库参考的是(本文也是参考)MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解_cn_yaojin的博客-优快云博客
首先在两个服务器安装好版本一致的mysql(个人建议mysql版本最好一致,不一致我也没试过),我用的mysql是5.6.40版本的、linux是centOs7。
主IP:192.168.111.128
从ip:192.168.111.130
首先要保证两个服务器能ping通。还有就是要在防火墙开放3306端口号,或者关闭防火墙(不建议)
![]() |
-
配置Master(主)
进入etc目录,编辑my.cnf
[root@localhost /]# cd etc
[root@localhost etc]# vi my.cnf
加入下面的代码:
log-bin=mysql-bin
server-id=2
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
binlog-ignore-db=mysql
binlog-do-db=test
这里的server-id用于标识唯一的数据库,这里设置为2,在设置从库的时候就需要设置为其他值。
binlog-ignore-db:表示同步的时候ignore的数据库
binlog-do-db:指定需要同步的数据库(可以添加多个,对应的从数据库的replicate-do-db)
编辑完如下图:
![]() |
编辑完后重启mysql
[root@localhost etc]# service mysql restart
Redirecting to /bin/systemctl start mysql.service
再登录mysql。赋予从库权限帐号,允许用户在主库上读取日志,赋予192.168.111.130也就是Slave机器有File权限,只赋予Slave机器有File权限还不行,还要给它REPLICATION SLAVE的权限才可以。
[root@localhost etc]# mysql -u root -pcll123456
mysql> GRANT FILE ON *.* TO 'root'@'192.168.111.130' IDENTIFIED BY 'cll123456';
Query OK, 0 rows affected (0.01 sec)
mysql> GRANT REPLICATION SLAVE ON *.* TO 'root'@'192.168.111.130' IDENTIFIED BY 'cll123456';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> exit;
重启mysql,登录mysql,显示主库信息
mysql> show master status;
![]() |
-
配置Slave(从)
进入etc目录,编辑my.cnf
[root@localhost /]# cd etc
[root@localhost etc]# vi my.cnf
加入下面的代码:
log-bin=mysql-bin
server-id=3
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
binlog-ignore-db=mysql
replicate-do-db=test
replicate-ignore-db=mysql
log-slave-updates
slave-skip-errors=all
slave-net-timeout=60
![]() |
编辑完后保存退出,重启mysql(重启命令上面有,这里我就不写了),登录mysql:
mysql> stop slave; #关闭Slave
mysql> change master to master_host='192.168.111.128',master_user='root',master_password='cll123456',master_log_file='mysql-bin.000001', master_log_pos=636;
mysql> start slave; #开启Slave
在这里指定Master的信息,master_log_file是在配置Master的时候的File选项, master_log_pos是在配置Master的Position 选项,这里要进行对应。
查看slave配置的信息:
mysql> show slave status \G;
![]() |
到此主从数据库便搭建完毕了。
有不正之处,欢迎指出