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

相关推荐
爆更小哇9 小时前
MyBatis的TypeHandler :优雅地实现数据加密与解密
数据库·后端·mybatis
likuolei9 小时前
Eclipse 创建 Java 接口
java·数据库·eclipse
w***15319 小时前
Spring boot启动原理及相关组件
数据库·spring boot·后端
q***656910 小时前
PostgreSQL 17 发布了!非常稳定的版本
数据库·postgresql
凌寒1110 小时前
Linux(Debian)安装、卸载 MySQL
linux·运维·mysql·debian
云飞云共享云桌面10 小时前
如何降低非标自动化工厂的研发软件采购成本
运维·服务器·网络·数据库·性能优化·自动化
泰克教育官方账号10 小时前
泰涨知识 | 什么是自动化巡检?
运维·服务器·数据库
oneslide10 小时前
分享一个MySQL数据库备份恢复脚本--II
数据库·mysql
Gauss松鼠会10 小时前
【GaussDB】使用DBLINK连接到ORACLE
数据库·sql·database·gaussdb
Arva .11 小时前
深度分页、读写分离、分库分表后 SQL 该如何优化?
数据库·sql