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

相关推荐
若兰幽竹3 分钟前
【从零开始编写数据库:基于Python语言实现数据库ToyDB的ACID特性】
数据库·python
宇钶宇夕5 分钟前
S7-200 SMART CPU 密码清除全指南:从已知密码到忘记密码的解决方法
运维·服务器·数据库·程序人生·自动化
周杰伦的稻香13 分钟前
MySQL密码管理器“mysql_config_editor“
数据库·mysql
云朵大王18 分钟前
SQL 视图与事务知识点详解及练习题
java·大数据·数据库
czhc11400756631 小时前
LINUX712 MYSQL;磁盘分区;NFS
数据库·mysql·adb
叁沐1 小时前
MySQL 13 为什么表数据删掉一半,表文件大小不变?
mysql
不太可爱的大白1 小时前
Mysql:分库分表
数据库·mysql
四季豆豆豆1 小时前
博客项目 laravel vue mysql 第四章 分类功能
vue.js·mysql·laravel
十五年专注C++开发2 小时前
hiredis: 一个轻量级、高性能的 C 语言 Redis 客户端库
开发语言·数据库·c++·redis·缓存
憨堡包^—^2 小时前
Docker —— MySQL主从复制集群
mysql·docker·容器