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

相关推荐
这个DBA有点耶1 分钟前
以为自增ID只是有空洞?聊聊双主架构下无声的“数据覆盖”
数据库·mysql·dba
陈布衣31 分钟前
MySQL(1)_MySQL 5.7.21 Linux 安装笔记
linux·笔记·mysql
钱栈up1 小时前
内网全断,怎么核实高炉和烧结系统的数据库对接信息
数据库
weavecodes1 小时前
双层缓存与权限实时生效:织码在线教育系统的 Caffeine + Redis 设计
数据库
bksczm1 小时前
InnoDB 页结构详解:页类型、页头页尾、数据行与页目录
数据库·mysql
bksczm2 小时前
InnoDB 行格式详解:DYNAMIC / COMPACT / COMPRESSED / REDUNDANT
java·开发语言·数据库
余槐i3 小时前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
字节跳动开源3 小时前
OpenViking连接业务系统,LLM Wiki一键编译
数据库·开源
进击的荆棘3 小时前
MySQL——数据库基础
数据库·mysql
Decay__3 小时前
22_MySQL 运维自动化平台 —— 部署编排 + 监控 + 巡检 + 告警 + 工单闭环一体化
运维·数据库·sql·mysql·架构