随笔:mysql的主主同步

该文详细介绍了如何在Nginx负载均衡环境下,设置MySQL的主主同步,包括修改my.cnf配置,设置服务器ID,同步与忽略特定数据库和表,创建复制用户,以及处理同步过程中的问题,如错误处理和网络联通性检查。
摘要由CSDN通过智能技术生成

背景:

nginx负载均衡和双击热备下,要求支持mysql的test库的主主同步,同时需要豁免特定的三张配置表。

实现步骤:

 1. 查看防火墙是否是关闭状态。systemctl status firewalld

2. 修改配置,增加以下内容。vi /etc/my.cnf 

server-id=1   #将两台服务器配置不一样的id
log_bin=mysql-bin1 
sync-binlog=1
#binlog-ignore-db=information_schema  #ignore-db是不同步某一个库
#binlog-ignore-db=performation_schema
#binlog-ignore-db=sys
binlog-do-db=zkxagsi    #db-db是同步弄一个库
replicate-wild-ignore-table=zkxagsi.t_network_config #ignore-table是忽略摸一个表
replicate-wild-ignore-table=zkxagsi.t_hot_standby_config
replicate-wild-ignore-table=zkxagsi.t_balance_config
#relay_log=mysql-relay-bin
log_slave_updates
default_authentication_plugin = mysql_native_password
auto_increment_increment=2        #需要将两台服务器的auto_increment_increment增长量都配置为2
auto_increment_offset=1
slave-skip-errors=all

 重启MySQL。systemctl restart mysqld

 3. 两台服务器分别进入到mysql中,并执行以下操作。mysql -uroot -p

create user 'repl'@'%' identified by 'Password';  #创建用户
grant replication slave on *.*  to 'repl'@'%';    #授权用户
flush privileges;
flush tables with read lock;   #锁定数据库表暂时无法写服务,若不锁表,pos值会修改
show master status;           #查看binlog文件值与pos值,记住文件名和pos值

 两台服务网上的binlog文件和pos值很有可能是不一样。所以执行change master的时候,要注意配置的是对端的信息。若本机是172.168.10.222,对端机是172.168.10.221,则在222的机器中配置221的信息。

 

  在172.168.10.221的机器配置172.168.10.222的信息。

change master to master_host='172.168.10.222', master_user='repl', master_password='Password',master_port=3306, master_log_file='mysql-bin2.000003', master_log_pos=328;

4. 分别开启同步。显示两个yes,则表示成功。

unlock tables;          #解锁写
start slave;            #开启同步
show slave status\G     #查看数据库是否正常同步

 5. 注意:

若查询同步状态,show slave status\G ,发现是connecting的时候,可以执行一下操作判断是否联通。

mysql -urepl -pPassword -h172.168.10.221

若连接不上,要判断

1) 防火墙

2)用户名密码

 结束!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值