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

Saadiya ·
更新时间:2024-09-20
· 849 次阅读

MySQL主从复制入门 确定主库与从库的关系(尽量保持主从库版本一致) 在主库创建备份所需的user create user 'repl' @'%' identified by '123456' (创建一个用户,要给予你备库可以访问的地址权限) 在主库配置文件配置 bin_log = /*/mysql-bin (确定binlog存放的位置) server_id = 1 (每个库都要有唯一的id) gtid_mode = on (关键参数) enforce_gtid_consistency = on (强调gtid一致性) log-slave-updates = on (从库binlog才会记录主库同步的操作日志) 在从库中配置 server-id = 101 relay_log = /*/relay_log gtid_mode = on (关键参数) enforce_gtid_consistency = on log-slave-update = on read_only = on [可选]最好选择配置 master_info_repository = TABLE[建议] raley_log_info_repository = TABLE[建议] 从主库复制数据,初始化备库的数据 mysqldump -uroot -p --single-transaction --master-data=2 --triggers --routines --all-databases >>all.sql (可能存在很大的阻塞) 在基于GTID初始化库的数据时,可能会遭遇到相应的错误: ERROR 3546 (HY000) at line 24: @@GLOBAL.GTID_PURGED cannot be changed: the added gtid set must not overlap with  如果遭遇此次问题,则可以reset slave all; reset master; 解决; 启动GTID的复制 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中需要加最后一个,是密码的问题;) 以上的一些值需要自行设置。 start slave; (开启复制链路) show slave status\G (查看复制链路状态,若有错误根据错误解决) 测试主从复制是否成功 主库修改相应数据,从库检查数据是否也被同步修改; 至此简单的MySQL基于GTID主从复制就已经操作完成,实战中应有更多高级的设置,同时也应有高可用架构保证数据库的提供优良的服务; 若有什么问题可以一起探讨。 作者:Dertraum_Dong



GTID MySQL学习 Mysql

需要 登录 后方可回复, 如果你还没有账号请 注册新账号