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;

相关推荐
weixin_45975394几秒前
c++怎么编写多线程安全的跨平台文件日志库_无锁队列与异步IO【附源码】
jvm·数据库·python
夏恪1 分钟前
如何用 IDBKeyRange 范围匹配检索特定区间的本地数据
jvm·数据库·python
2301_766283442 分钟前
如何防止SQL拼接漏洞_使用PDO对象实现安全的SQL交互
jvm·数据库·python
u0110225125 分钟前
如何解决Oracle 12c以上版本的ORA-65096_C##公共用户前缀限制
jvm·数据库·python
woxihuan1234569 分钟前
JavaScript中利用Range对象实现复杂的文本选择操作
jvm·数据库·python
海雅达手持终端PDA12 分钟前
海雅达Model 10X—高通6490工业三防平板,生产制造仓储管理应用
android·物联网·能源·制造·信息与通信·交通物流·平板
zhoutongsheng14 分钟前
CSS如何使用-hover显示图片文字说明_利用--after实现图文叠加效果
jvm·数据库·python
2301_7838486518 分钟前
CSS解决浮动元素导致的布局闪烁_稳定容器布局高度
jvm·数据库·python
m0_7407963618 分钟前
Workerman5.0协程实战:PHP高并发新标准
jvm·数据库·python
2301_7693406719 分钟前
如何在 CSS 中实现元素的绝对定位,使其不受窗口尺寸变化影响
jvm·数据库·python