美文网首页
mysql双主配置-双主带来的管理思考

mysql双主配置-双主带来的管理思考

作者: 随便写点什么就好 | 来源:发表于2021-03-27 10:34 被阅读0次

概述

mysql双主配置很简单,似乎大家都只关心他的安装和部署,大家可以用他来做双活的方案,并没有深刻的思考过生产环境后续管理的风险和如何规避这些问题。

配置重点

1. 配置文件

log-slave-updates = true
auto_increment_offset = 1 #另外一个主B是2,其他一样。
auto_increment_increment = 2

replicate-ignore-db = mysql
replicate-ignore-db = sys
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema
replicate-ignore-db = undolog
replicate_wild_ignore_table = mysql.%
replicate_wild_ignore_table = sys.%
replicate_wild_ignore_table = information_schema.%
replicate_wild_ignore_table = performance_schema.%
replicate_wild_ignore_table = undolog.%

2. 其他配置,如果是生产环境改造的话,需要特别注意

  1. service_id当然不能一样。
  2. masterB是用masterA的xtrabackup备份恢复生成。 mysqldump默认参数其实很不到位的,当然大部分情况mysqldump没啥问题。但是如果有下面的问题的话,mysqldump要慎用:
    (1) .你刚好有存储过程,mysqldump需要加另外的参数。
    (2) .你刚好不是utf8mb4,原库要支持表情,然后mysqldump刚好默认是utf8的话,就没有了。
    (3). 你在调试的是生产环境,加--master-data=2来记录binlog点,锁表业务就会找上门来。
  3. binlog这些当然是两边都要开

管理上需要注意的问题

1. 不要发放DDL账号,避免开发人员自行变更数据库表结构,导致1167错误

双主如果一边更新表结构,一边在写入,即使你认为你的的sql没有问题。但是mysqlbinlog的写入日志不是这样的,比如row格式,需要回放的日志如下下面,你修改表结构之前是可以插入的,中间查多一列的话,你的列对不上了,导致1167错误。目前有两种办法可以规避这个问题:

  1. 这种表结构更新可以锁表,不让另外一边写入再执行。
  2. 还有一种办法是列只可以在最后加列,要有默认值。这样即使表结构发生了变更,中继日志还是可以回放的。不至于双主同步报错。
image.png

2. 双主有忽略库

如果忽略了一些库,比如mysql的库,创建账号的时候,就需要两边创建。

相关文章

  • mysql双主配置-双主带来的管理思考

    概述 mysql双主配置很简单,似乎大家都只关心他的安装和部署,大家可以用他来做双活的方案,并没有深刻的思考过生产...

  • Mycat实现MySQL主从复制和读写分离----mysql双主

    1 机器准备 2 mysql双主双从安装配置 2.1 mysql的安装 2.2 配置和验证 3 mycat的安装 ...

  • MySQL双主双从配置-Docker

    环境搭建 由于我的电脑配置不是很高, 这里就使用docker搭建环境. 如果你的电脑配置够好也是可以使用4台虚拟机...

  • mysql双主

    http://www.cnblogs.com/ygqygq2/p/6045279.html#

  • MySql双主互备配置

    我把文档拆分成多个部分,然后各自组合成了全新安装和现有环境升级安装,各位可以根据自己的情况选择 全新安装 安装步骤...

  • 2019-10-12

    利用LVS+Keepalived搭建Mysql双主复制高可用负载均衡环境 应用背景: MySQL复制(主主,主从....

  • MySQL双主一致性架构优化

    阅读原文:MySQL双主一致性架构优化 双主保证高可用 MySQL数据库集群常使用一主多从,主从同步,读写分离的方...

  • MySql双主搭建

    简单介绍一下搭建MySql双主的背景: 系统配置及MySql版本 请提前安装MySql,本文档未涉及到MySql的...

  • mysql双主+keepalived

    设计MySQL高可用架构的目的是为了避免单点故障,减少因系统故障或者数据库崩溃所造成的恢复或者停机时间,为企业提供...

  • mysql主从复制

    1、MYSQL 主从复制(单活)2、双主(单活),failover比单主简单3、双主配san存储(单活)4、DRB...

网友评论

      本文标题:mysql双主配置-双主带来的管理思考

      本文链接:https://www.haomeiwen.com/subject/tsvehltx.html