Mysql主主复制+读写分离进阶

1.如果出现同步错误,需要忽略错误,进行下条语句继续同步。

[plain] view plain copy

  1. mysql> stop slave;  
  2. mysql> set global sql_slave_skip_counter =1;           
  3. mysql> start slave  

2.通过配置文件自动忽略同步错误“1007”,生产环境主从分离要用:

vim /data/3307/my.cnf

  slave-skip-errors = 1032,1062,1007,1008

3.让从库开启bin_log的办法:

vim /data/3307/my.cnf

[plain] view plain copy

  1. log-slave-updates  
  2. log-bin = /data/3307/mysql-bin  
  3. expire_logs_days = 7                #日志只保留7天  

4,.双主库同步方案:

 a.让表的ID自增,让主1写1,3,5     主2  写2,4,6。

[plain] view plain copy

  1. A增加:  
  2. auto_increment_increment = 2  
  3. auto_increment_offset=1  
  4. B增加:  

b.不让表的ID自增,通过WEB程序去seq服务器取ID,写入双主。

5.读写分离的方案:

 a.通过开发的程序控制读写的位置。 (推荐)

 b.通过开源软件实现。(Amoeba,Mysql_proxy)

 c.自己开发DAL层。(大公司用)

6.增量备份步骤:

 一。选择一台从库,不对外提供业务,专门用了做备份。此从库开启bin_log功能,做增量备份。

 二。备份的时候需要停止sql线程,在用mysqldump备份:

  stop slave sql_thread;                 #停止sql线程,不会停止同步IO进程

 三。然后将备份文件和bin_log文件远程保存起来。

    下面命令可以用来远程备份bin_log:

  mysqlbinlog --read-from-remote-server --raw --host=172.16.1.214 --port=3306 --user=rep --password=Root1234 --stop-never mysql-bin.000001

7.主从复制延时原因:

 a.从库太多,一般要3-5个

 b.从库配置太低。

 c.慢sql过多。

 d.高版本mysql支持多线程复制

8.同一账号在主从库拥有不同权限方案:

 a.在主库上创建拥有读写权限账号,然后再从库上面收回写入权限。

 mysql> grant insert,update,delete,select on *.* to web@'172.16.1.%' identified by '123';             #创建web用户对所有表拥有读写权限,主库执行。

 mysql> show grants form  web@'172.16.1.%';             #查看用户权限

 mysql> REVOKE insert,update,delete ON *.* FROM 'web'@'172.16.1.%';                #回收web用户写入权限,从库执行

 b.从库不同步mysql授权表:(推荐方案)

  my.cnf 里面加:

   replicate-ignore-db = mysql  

   binlog-ignore-db = mysql   

 c.在从库设置read-only:

  mysql> set global read_only=1;

  或者 my.cnf 加 read-only

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

南風_入弦

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

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

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

打赏作者

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

抵扣说明:

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

余额充值