Mysql 主从数据同步 实现步骤

学习大型分布式存储系统架构进阶之MySQL海量数据存储与优化心得;

文章内容输出来源:拉勾教育Java高薪训练营;

mysql版本 5.7.28

1.修改主库的my.cnf文件

vi /etc/my.cnf

2.登录主库mysql终端,给需要同步的从库赋权限:

3.从库修改my.cnf配置文件(主要是server-id要不一样,然后可以设置成只读的权限)

4.登录到从库mysql终端,执行命令同步主库,注意要启动 slave

mysql> change master to master_host='192.168.159.159',master_port=3306,master_user='root',master_password='root',master_log_file='mysqsql-bin.000001',master_log_pos=869;

mysql> start slave;

//查看下状态,没有异常就是配置成功了。
mysql> 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.

如下图:

这是由于主库和从库的auto.cnf中的server-uuid是一样的原因(回忆之前自己克隆虚拟机的时候,是带着mysql一起克隆的,所以会出现这个问题)

查看 auto.conf:

[root@158~]# vim /var/lib/mysql/auto.cnf

[auto]
server-uuid=4f37a731-9b79-11e8-8013-000c29f0700f

解决方案:

停止从库的mysqld服务,删除他的auto.cnf文件,再启动数据库服务即可:

[root@158mysql]# systemctl stop mysqld.service

[root@158 mysql]# mv /var/lib/mysql/auto.cnf /var/lib/mysql/auto.cnf.bak

[root@158mysql]# systemctl start mysqld.service

此时再去查看从库auto.cnf,已自动生成新的server-uuid:

[root@localhost mysql]# vim /var/lib/mysql/auto.cnf


[auto]
server-uuid=2682888d-994a-11e8-aaf0-000c298cdafc

再次通过指令查看:

之前的异常信息没有了,问题得以解决。

对导师、班主任评价:通过导师24小时疑难答疑以及班主任的细心指导,发现自己也会越来也喜欢学习,导师与班主任交流起来都很幽默,可以拉近彼此的距离,学习本是一件很枯燥的事情,但是班级群里学习氛围非常愉快轻松,有问题跑到群里,导师就会带领大家互相补助以及细心地指导,在拉勾学习的经历让我感觉很愉快同时也受益匪浅。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诚信赢天下

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值