环境准备
- 192.168.1.126 master
- 192.168.1.127 slave
- mysql 8
- centos7
一 主数据 master 配置
1. 修改主节点的配置文件
vi /etc/my.cnf
在文件中[mysqld]节点下加入以下配置
server-id=1
log-bin=master-bin
log-bin-index=master-bin.index
2.重启mysql 服务
systemctl restart mysqld
3.连接数据库,,检验是否配置成功
mysql -u root -p #输入你的密码
show databases ;
show master status;
可以看到这些信息,说明前面我们的master配置成功了
4.创建用于复制操作的用户
CREATE USER 'repl'@'192.168.1.127' IDENTIFIED WITH mysql_native_password BY 'jessDlmaster@1';
#授权
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.1.127';
#刷新授权信息
flush privileges;
二,从数据库配置
1. 修改从节点的配置文件
vim /etc/my.cnf
加入以下内容
server-id=2
relay-log=slave-relay-log
relay-log-index=slave-relay-bin.index
2 重启mysql服务
systemctl restart mysqld
4.在从节点上设置主节点参数
CHANGE MASTER TO
MASTER_HOST='192.168.1.126',master_port=3306,master_user='repl',
master_password='jessDlmaster@1',MASTER_LOG_FILE='master-bin.000001',
MASTER_LOG_POS=0;
5 开启主从同步
start slave; #停止主从同步命令为:stop slave
6.查看同步状态
show slave status\G;
说明们的主从同步配置成功了,接下来测试看看,在主库中创建数据库shiro,从库不做任何操作。
注意:如果如果从库宕机,重新启动,要连接上mysql服务,执行 start slave 这个命令,开启主从同步
1.主库添加shiro数据库
2.在从库中进行查看 show databases;
从库中也有 shiro 这个数据库了
好了,主从同步配置就大功告成啦
如果查看同步配置出现以下错误
Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server ids; these ids must be different for replication to work (or the –replicate-same-server-id option must be used on slave but this does not always make sense; please check the manual before using it).
可以去看看这篇文章:https://blog.csdn.net/zyhlwzy/article/details/80569422