mysql主从复制(同步阿里云的RDS至自建数据库)

从库同步阿里云的RDS

阿里云默认开启了binglog,所以我们无需对主库进行配置

查询主库的server_id,从库配置不要重复就行

show variables like '%server_id%';

编辑从库的my.cnf文件

在文件中增加如下配置

server-id = 123456789 //服务 ID,主从实例 server-id 需不同。

log_bin = /var/log/mysql/mysql-bin.log

expire_logs_days = 10;

max_binlog_size = 100M

replicate-do-db = exampledb //需要同步的数据库

replicate-ignore-db = mysql //不需要同步的数据库

replicate-ignore-db = information_schema //不需要同步的数据库

replicate-ignore-db = performance_schema //不需要同步的数据库

GTID

gtid_mode=on

enforce_gtid_consistency=on

binlog_format=row //设置 binlog 为 row

log-slave-updates=1

设置同步选项

change master to master_host='rm-xxx.mysql.rds.aliyuncs.com', master_user='xxx', master_password='xxxx', master_port=3306, master_log_file='mysql-bin.000637', master_log_pos= 6433378, master_connect_retry=30;

其中的master_log_file和master_log_file通过在master上执行show master status;获得

但是需要注意如果主库数据有变更,这两个值可能会一直有变动,可以先执行如下命令锁表

锁表

flush tables with read lock;

解锁

unlock tables

启动从实例

start slave;

检查同步结果

show slave status\G

查看系统返回信息中 Slave_IO_Running 和 Slave_SQL_Running 的状态是否为 Yes,如下所示。

参考

https://developer.aliyun.com/article/66087

相关推荐
q***718536 分钟前
【玩转全栈】----Django基本配置和介绍
数据库·django·sqlite
学习编程的Kitty36 分钟前
JavaEE进阶——Spring Boot项目
数据库·spring boot·java-ee
高铭杰2 小时前
mysql主备配置(对比postgresql)
数据库·mysql·replication
~~李木子~~7 小时前
MySQL 迁移总结报告
数据库·mysql
有梦想的攻城狮8 小时前
通过Lettuce实现PB3格式对象在Redis中的存储与查询
数据库·redis·缓存·pb3
CodeLongBear8 小时前
MySQL索引篇 -- 从数据页的角度看B+树
mysql·面试
桦08 小时前
MySQL【函数】
数据库·mysql
⑩-9 小时前
Redis(1)
数据库·redis·缓存
IFLY5139 小时前
使用arduino用 esp32 连接阿里云遇到的坑
阿里云·云计算
2301_803554529 小时前
主从同步配置的步骤
数据库