用到的工具:
Navicat(方便配置、查看主从状态)
Xftp(方便修改配置文件)
VMware(主从数据库安装所在的虚拟机)
下面8个步骤实现mysql主从配置:
1.在主库中创建一个用户,ip配置为从库ip,权限选择Replication Slave,也可以全选,按需选择;
可以使用Navicat工具,连接主库后,添加用户,配置用户权限(下图没展示权限配置):
2.在主库mysql配置文件my.cnf中添加配置(可以通过xftp远程主机后,找到/etc/my.cnf文件,直接进行修改):
#master
server-id=1
log-bin=/var/lib/mysql/binlog
#后面的repl是需要同步的库
binlog-do-db=repl
3.重启主库mysql服务:
[root@localhost ~]# systemctl restart mysql
或者
[root@localhost ~]# service mysqld restart
==============到此主库配置完成,下面配置从库==============
4.在主库mysql配置文件my.cnf中添加配置:
#slaver
server-id=2
relay-log= mysql-relay-bin
#后面的repl是需要同步的库
replicate-do-db=repl
5.重启从库mysql服务:
[root@localhost ~]# systemctl restart mysql
或者
[root@localhost ~]# service mysqld restart
6.Navicat连主库,按F6,使用命令查看主库信息:
mysql> show master status;
得到File和Position值(下一步要用到),通常为binglog.00000*和数字:
7.Navicat连从库,按F6,使用命令设置变量:
mysql> CHANGE MASTER TO
MASTER_HOST='192.168.0.103',
MASTER_PORT=3306,
MASTER_USER='uslave',
MASTER_PASSWORD='Vmware-p55word-admin',
MASTER_LOG_FILE='binlog.000003',
MASTER_LOG_POS=0;
------------上面这段命令需要解释一下:----------------
MASTER_HOST 为主库ip;
MASTER_PORT 为主库端口;
MASTER_USER 为第1步创建的用户名;
MASTER_PASSWORD 为第1步创建的密码;
MASTER_LOG_FILE 为第6步得到的File值
MASTER_LOG_POS 为第6步得到的Position值(这里可以直接写0,自动识别)
运行效果如图:
8.启动从库同步slave(Navicat连从库,按F6)
mysql> start slave;
查看slave状态:
mysql> show slave status;
会看到“..Waiting for master to send event.....”如图:
9.完成配置,可以测试了:在主库中创建一张表,保存,刷新从库,可以看到从库里出现了一张一样的表。