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;

相关推荐
Elastic 中国社区官方博客12 分钟前
Elasticsearch Serverless 中的数据流自动分片
大数据·数据库·elasticsearch·搜索引擎·serverless·时序数据库
Minyy1114 分钟前
牛客网刷题SQL--高级查询
数据库·sql
ygqygq214 分钟前
ElK 8 收集 MySQL 慢查询日志并通过 ElastAlert2 告警至飞书
mysql·elk·飞书
秋意钟16 分钟前
MySQL基本架构
数据库·mysql·架构
朱小勇本勇1 小时前
Qt实现控件拖曳
开发语言·数据库·qt
m0_748245921 小时前
mysql之如何获知版本
数据库·mysql
纯洁的小魔鬼1 小时前
redis 基础
数据库·redis·命令行
I love this bad girl1 小时前
防火墙旁挂部署+故障切换
服务器·网络·数据库
echo爱学易语言1 小时前
Linux ufw命令丨Linux网络防火墙ufw命令详解
服务器·网络·数据库
JhonKI1 小时前
【MySQL】表的基本查询(下)
数据库·mysql·oracle