MySQL学习篇 --- 基于GTID主从复制入门

MySQL主从复制入门

  1. 确定主库与从库的关系(尽量保持主从库版本一致)
  2. 在主库创建备份所需的user
    1. create user 'repl' @'%' identified by '123456' (创建一个用户,要给予你备库可以访问的地址权限)
    2.  
  3. 在主库配置文件配置
    1. bin_log = /*/mysql-bin (确定binlog存放的位置)

    2. server_id = 1 (每个库都要有唯一的id)

    3. gtid_mode = on (关键参数)

    4. enforce_gtid_consistency = on (强调gtid一致性)

    5. log-slave-updates = on (从库binlog才会记录主库同步的操作日志)

  4. 在从库中配置
    1. server-id = 101

    2. relay_log = /*/relay_log

    3. gtid_mode = on (关键参数)

    4. enforce_gtid_consistency = on 

    5. log-slave-update = on

    6. read_only = on [可选]最好选择配置

    7. master_info_repository = TABLE[建议]

    8. raley_log_info_repository = TABLE[建议]

  5. 从主库复制数据,初始化备库的数据
    1. mysqldump -uroot -p --single-transaction --master-data=2 --triggers --routines --all-databases >>all.sql (可能存在很大的阻塞)
    2. 在基于GTID初始化库的数据时,可能会遭遇到相应的错误:
      1. ERROR 3546 (HY000) at line 24: @@GLOBAL.GTID_PURGED cannot be changed: the added gtid set must not overlap with 
      2. 如果遭遇此次问题,则可以reset slave all; reset master; 解决;
  6. 启动GTID的复制
    1. change master to master_host='192.168.3.74',master_user='repl',master_password='123456',MASTER_AUTO_POSITION = 1, get_master_public_key=1;(mysql8中需要加最后一个,是密码的问题;)
    2. 以上的一些值需要自行设置。
    3. start slave; (开启复制链路)
    4. show slave status\G (查看复制链路状态,若有错误根据错误解决)
  7. 测试主从复制是否成功
    1. 主库修改相应数据,从库检查数据是否也被同步修改;

至此简单的MySQL基于GTID主从复制就已经操作完成,实战中应有更多高级的设置,同时也应有高可用架构保证数据库的提供优良的服务;

若有什么问题可以一起探讨。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值