MySQL单机改主从——binlog同步方式

1.实施前提

主库需要开启binlog(value为on即为开启)

show variables like 'log_bin';

主库需要开启gtid模式(value为on即为开启)

show variables like 'gtid_mode';

从库需要安装好与主库版本一致

2.主从实施

2.1主库上创建复制用户

复制代码
GRANT REPLICATION SLAVE ON *.* to 'repl'@'192.168.53.%' IDENTIFIED BY 'repl';

2.2对主库进行备份

复制代码
mysqldump -uroot -p123123 --single-transaction --master-data=2 --A --triggers --routines --events | gzip > fulldb_backup.sql.gz
  • 使用 mysqldump 进行全库备份,包含触发器、存储过程、函数和事件。
  • --single-transaction 保证数据一致性。
  • --master-data=2 包含主从复制信息。

2.3恢复从库数据

gzip -d fulldb_backup.sql.gz

mysql -uroot -p < fulldb_backup.sql

2.4建立主从复制关系

通过less等工具查看备份文件头部fulldb_backup.sql

找到一行如下:

-- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000021', MASTER_LOG_POS=844124729;

将在备份文件中找到的MASTER_LOG_FILE,MASTER_LOG_POS写入命令中,登录到从库执行

复制代码
CHANGE MASTER TO MASTER_HOST='192.168.53.199',MASTER_PORT=3306,MASTER_USER='repl',MASTER_PASSWORD='repl',MASTER_LOG_FILE='mysql-bin.000021',MASTER_LOG_POS=844124729;

3.启动slave进程,状态验证

登录从库

start slave;

show slave status\G;

相关推荐
sulikey6 分钟前
数据库中等值连接与自然连接的区别。为什么不建议使用自然连接?
数据库·sql·mysql·等值连接·自然连接
BreezeDove14 分钟前
【Android】Flutter3.35项目启动超时问题
android·flutter
IT策士17 分钟前
Redis 从入门到精通:分布式锁 —— 从 SETNX 到 Redlock
数据库·redis·分布式
云计算磊哥@18 分钟前
运维开发宝典027-MySQL03数据库的增删改查
运维·数据库·运维开发
李白的天不白21 分钟前
数据库的CEUD
数据库·sql·oracle
故渊at24 分钟前
第十四板块:Android 硬件抽象与安全加固 | 第三十四篇:Hardware Composer (HWC) 与 显示安全(HDCP)
android·安全·composer·安全加固·hwc·硬件抽象
KIO no way31 分钟前
AI内容编排是什么_聊聊CSDN_AI数字营销背后的分发逻辑
android·人工智能
linux修理工33 分钟前
kafka积压
数据库·分布式·kafka
i220818 Faiz Ul34 分钟前
药店管理|基于springboot + vue药店管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·美食分享系统
故渊at38 分钟前
第十四板块:Android 硬件抽象与安全加固 | 第三十三篇:Verified Boot 与 硬件信任链(Trusty TEE)
android·安全·信任链·verified