Mysql的主从复制

2022-08-08 14:15:28

1.环境准备

创建mysql表的主表和从表,需要准备两台服务器,并且都要安装上mysql,一个为主表(master,名字任意取)一个为从表(slave),注意主从表的ip地址不同

数据库IP数据库版本
Master192.168.217.1305.7.25
Slave192.168.217.1315.7.25

创建成功之后在linux虚拟机上登录进mysql

 登录之后,修改mysql的配置文件,命令行vim /etc/my.cnf

增加配置,在mysql下添加配置

 之后需要重启一下mysql检查是否配置成功

登录mysql之后创建一个用户,注意需要给用户授予REPLICATION SLAVE权限,只有有这个权限之后从表才能被主表授权,从表才能复制主表的内容.

 例:之后创建一个用户xiaoming,密码为Root@123456

 创建好用户之后查看表的状态,只查看前两条,并且查寻之后就不用在主表的虚拟机中再写命令,因为日志名称和位置是动态的,主表的位置之后在从表中会使用到,如果变化了在从表中再输入这个位置就不正确了.

在主表中操作完之后在从表中再操作一次,注意从表中的二进制配置文件中的ip地址和主表中的不同.

注意: 登录Mysql数据库,设置主库地址及同步位置


刷新从表

 查看状态,然后通过状态信息中的 Slave_IO_running 和 Slave_SQL_running 可以看出主从同步是否就绪,如果这两个参数全为Yes,表示主从同步已经配置完成.

注意:在linux中执行命令之前,需要先将UUID中的数修改一下,一般的路径是/var/lib/mysql/auto.cnf   这个目录里的server_id   需要  改变一下------把最后0 随便设置一个 1 数字就好,因为UUID是唯一的,从表复制主表时不修改UUID的话就会把主表覆盖,所以需要改一下.

2.测试

Navicat连接上两台MySQL服务器,进行测试,只需要在主库Master执行操作,查看从库Slave中是否将数据同步过去即可.

例:在主表中创建一个rw数据库,查看从表中是否也有一个同堂的数据库,之后在rw数据库中创建一个user表,查看从表中是否也产生一个从表,如果有,mysql分离创建成功.

  • 作者:多多moneylll
  • 原文链接:https://blog.csdn.net/weixin_59885495/article/details/125916933
    更新时间:2022-08-08 14:15:28