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;

相关推荐
阿演14 分钟前
DataDjinn v0.2.11:SQL 编辑、AI 协作和表格操作继续打磨
数据库·人工智能·sql
私人珍藏库20 分钟前
[Android] PocketPal -本地离线AI助手+大模型部署神器
android·人工智能·app·软件·多功能
爱笑鱼37 分钟前
Handler(三):主线程、HandlerThread、Binder 线程到底怎么区分?
android
w1395485642244 分钟前
鸿蒙实战:报告与雷达图 ReportDao
android·华为·harmonyos·鸿蒙系统
爱笑鱼1 小时前
Handler(二):MessageQueue 为什么不是普通队列?
android
l1t2 小时前
duckdb 1.6dev新增的.manual命令
开发语言·数据库
阿巴斯甜2 小时前
Android Studio 新版 Logcat
android
辉灰笔记2 小时前
第一篇:MySQL8.0生产备份实战|XtraBackup全自动全量+增量备份(钉钉告警+异地Binlog归档)
数据库·mysql·钉钉·运维开发
监督者修2 小时前
从零构建 GIS 数据引擎:方案驱动架构的设计与实践
android·架构·kotlin
Yoke2 小时前
从零到三端:用 Kotlin Multiplatform + Compose 构建跨平台财务追踪应用
android