linux环境下mysql主主互备模式配置(亲测可行)

一、mysql版本及需求说明

1、主机版本5.6.39-log 所在主机IP 47.95.241.100 端口号3306
2、从机版本5.7.27-log 所在主机IP 47.93.103.175 端口号3306
3、mysql安装略
4、IP为100的mysql目前有的数据库信息:information_schema、mysql、performance_schema,oa101mysql,rdp_server,xinzhi,test
5、IP为175的mysql目前有的数据库信息:information_schema,mysql,performance_schema,sys,test
6、需求
①、100上的mysql只需同步175上除information_schema,mysql,performance_schema,sys之外的所有数据库数据。
②、175上的数据只需同步100上除information_schema、mysql、performance_schema,oa101mysql,rdp_server,xinzhi之外的所有数据库信息。

二、具体配置

1、my.cnf配置文件配置
①、100主机配置
在这里插入图片描述
配置完之后须重启mysql服务(具体操作略)
②、175主机配置如下:
在这里插入图片描述
配置完后须重启mysql服务

2、主机为100和175的相互创建并授权账号信息
①、登录100主机的mysql服务执行如下sql命令

GRANT REPLICATION SLAVE ON *.* TO slave@'47.93.103.175' IDENTIFIED BY '123456';

②、登录175主机的mysql服务执行如下sql命令

GRANT REPLICATION SLAVE ON *.* TO slave@'47.95.241.100' IDENTIFIED BY '123456';

创建授权账号后可执行如下sql,查询账号信息

SELECT user,host from mysql.user;

3、分别查询两个主机数据日志信息并相互配置
①、登录100主机上的mysql服务执行如下命令:

show master status;

结果如下:
在这里插入图片描述
②、登录175主机上的mysql服务执行如下命令:

show master status;

结果如下:
在这里插入图片描述
③、相互配置链接数据及账号等信息
a、在100的主机上执行如下sql命令;

stop slave;
change master to master_host='47.93.103.175',master_user='slave',master_password='123456',master_log_file='mysql-bin.000002',master_port=3306,master_log_pos=766;
start slave;

b、在175的主机执行如下sql命令

stop slave;
change master to master_host='47.95.241.100',master_user='slave',master_password='123456',master_log_file='mysql-bin.000002',master_port=3306,master_log_pos=428;
start slave;

④、验证配置
在两个数据库服务上分别执行如下sql命令:

show slave status \G;

在这里插入图片描述

在这里插入图片描述

四、测试

1、在100上创建一个test1数据库,在175上查看
在这里插入图片描述

在这里插入图片描述
2、在175上删除test1数据库,在100上查看
在这里插入图片描述

在这里插入图片描述
备注:不要在主库(互为主备时的从库)上使用binlog-do-db或binlog-ignore-db选项,也不要在从库(互为主备)上使用replication-db-do或replication-db选项,因为这样可能产生跨库更新失败的问题;主主互备时推荐从库上使用replicate_wild_do_table和replicate-wild-ignore-table两个选项来解决复制过滤问题,主从互备也推荐这种配置

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一份基本的 MySQL 主主互备配置: 1. 首先,需要在两个 MySQL 服务器上安装 MySQL 软件,并确保两个服务器上的版本一致。 2. 在两个服务器上创建一个用于主主互备的新用户,并给该用户授权。 3. 配置主服务器的 my.cnf 文件,开启二进制日志功能,并设置 server-id 参数为一个唯一的值。 4. 在主服务器上创建一个用于数据复制的备份文件夹,并设置相应的权限。 5. 配置主服务器上的防火墙,允许从备服务器的 IP 地址进行连接。 6. 在备服务器上的 my.cnf 文件中,设置 server-id 参数为一个唯一的值,并开启二进制日志功能。 7. 在备服务器上创建一个用于数据复制的备份文件夹,并设置相应的权限。 8. 在两台服务器上启动 MySQL 服务,并在主服务器上创建一个新的数据库。 9. 在主服务器上创建需要复制到备服务器上的表,并在备服务器上创建相应的表。 10. 配置主服务器上的数据复制参数,包括 binlog-do-db 和 binlog-ignore-db 参数。 11. 在备服务器上配置数据复制参数,包括 replicate-do-db 和 replicate-ignore-db 参数。 12. 在主服务器上执行 CHANGE MASTER TO 命令,指定备服务器的 IP 地址、端口号、用户名、密码等信息。 13. 在备服务器上执行 START SLAVE 命令,开始数据复制。 14. 检查数据复制的状态,确保主服务器和备服务器上的数据一致。 以上是一份基本的 MySQL 主主互备配置,具体的配置细节需要根据实际情况进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值