入手一台阿里云 RDS,想用它与本机 Mysql 实现主从同步。阿里云 RDS 作为
主实例
,本机 MySql 作为从实例
,两者版本都是 Mysql 5.7。在此分享下实现的方案,部分参照 https://developer.aliyun.com/article/57731
本机Mysql配置
- 修改 /etc/my.cnf
1 | # 主从同步模式 |
如果指定某个需要同步的数据库,需增加参数 replicate-do-db ,并赋值指定的 RDS 数据库名称,例如:replicate-do-db = test。
- 重启本机 mysql
1 | $ service mysql restart |
配置同步的RDS
- 登录本机 mysql
1 | $ mysql -u -p |
- 配置主实例
1 | mysql> change master to master_host = 'rds外网地址', master_port = 3306, master_user = '账号', master_password='密码', master_auto_position = 1; |
- 启动从实例
1 | mysql> start slave; |
- 查看本机 mysql 同步状态
1 | mysql> show slave status \G; |
上面返回的状态中,查看 Slave_IO_Running 和 Slave_SQL_Running 的状态是否为 Yes 。只有两个参数均显示 Yes,表示配置成功,完成主从同步功能。否则,请根据报错信息,定位错误原因,并进行修改。
测试主从同步
目前为止,已经完成 RDS 实例作为主实例,通过主从同步的方式,同步到本机 MySQL。
- 登录主实例 RDS
1 | # 创建数据库test |
- 登录本机 Mysql
1 | # 查看数据库 |
一主多从架构图
关联
[[MySQL Ubuntu下的安装]]
[[MySQL 数据库同步实现双机互备]]
[[Linux 集群部署解决方案一]]