详解配置实现 Mysql主从复制

在这里插入图片描述

1、架构规划

192.168.***.41    master  主节点
192.168.***.253  slave   从节点

2、修改mysql的配置文件

root@localhost mysql]# vim /etc/my.cnf

3、分别在配置文件中加入如下配置

mysql(master):
		server-id=1   # 代表架构节点的唯一标识
		log-bin=mysql-bin  #  日志文件起一个确定的前缀,注意这只是一个前缀,系统会自动生成唯一标识
		log-slave-updates  # 从节点的自动更新 
		slave-skip-errors=all  #  让从结点跳过错误的语句,直接跳过错误去执行正确的语句从而同步数据
	
	msyql(slave):
		server-id=2
		log-bin=mysql-bin
		log-slave-updates
		slave-skip-errors=all
		
		注意:两个机器的server-id不能一致

4、重启mysql服务

systemctl restart mysqld

5、登录mysql执行如下命令检测配置是否生效

SHOW VARIABLES like 'server_id';

在这里插入图片描述

6、登录master节点执行如下命令

show master status;

在这里插入图片描述
mysql-bin.000001这个日志文件告诉用户,从第154行开始读取更新,在154行之前都是系统安装及更新的操作,接下来的操作会在154行以后去追加

7、登录从节点执行如下命令

change master to 
		master_host='192.168.31.41',    #  主节点的ip地址
		master_user='root',   # 主节点用户
		master_password='ROOT!Q2w',  # 主节点用户密码
		master_log_file='mysql-bin.000001',
		master_log_pos=154;

在这里插入图片描述

8、开启从节点

	start slave; 
	stop  slave;
	show slave status;  # 查看从节点状态 添加\G 进行格式化输出

9、主从连接成功需要注意以下几点:

1、主从虚拟机都必须关闭防火墙

2、查看出错日志
(配置主从库的虚拟机都是在原有基础虚拟机进行克隆)
如果出现:
Slave I/O: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work. Error_code: 1593错误,请执行如下命令

rm -rf /var/lib/mysql/auto.cnf删除这个文件,之所以出现会出现这样的问题,是因为我的从库主机是克隆的主库所在的主机,所以auto.cnf文件中保存的UUID会出现重复.

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_46195957/article/details/118964506