首页 > 技术文章 > 两个mysql数据库同步_如何实现两个mysql数据库之间的主从同步?

purple5252 2021-04-08 19:13 原文

配置主的配置文件

vi /etc/my.cnf

 

 

 创建复制用户并授权给从服务器

grant replication slave on *.* to 'rpl'@'192.168.162.130' identified by '123456';

重启主服务器的MySQL  /etc/init.d/mysqld restart

查看master信息: 进入MySQL  show master status \G;

 

修改从库配置文件

vi /etc/my.cnf

 

重启从服务器MySQL,进入MySQL

指定主服务器IP等信息

change master to master_host='192.168.162.128 ',master_user='rpl',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=647;

启动slave  :start slave;

查看slave状态:show slave status \G;

报错Last_IO_Error: 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

 

意思是主和从必须都要有不同的uuid,我们分别去查看下主从的uuid

主:server-uuid=4e6c5a78-1e9a-11e7-8c65-000c29426312

 

查看从库uuid  从库uuid:server-uuid=4e6c5a78-1e9a-11e7-8c65-000c29426312

 

可以看出是真的一样,原因在于 我是先安装了一个虚拟机并装好MySQL,后面有复制了一遍,作为从服务器,所以导致了这个UUID是一样的。

接下来就是解决这个UUID问题,将从库上的auto.cnf 备份下。然后重启从库。再看下从库的UUID

[auto]

server-uuid=2e9c834a-1eb2-11e7-864b-000c2928472e

 

再次查看从库状态

 

从库状态正常了

11.测试主从是否正常

主库上创建一个测试库,test :create database test;

创建测试表:

create table test.test(

id int,

username varchar(10)

)ENGINE='innodb'

12.查看从库:

 

正常,说明主从搭建成功
————————————————
版权声明:本文为CSDN博主「In k」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42502448/article/details/113125716

推荐阅读