阿里云RDS MySQL与自建MySQL数据库进行主从同步(GTID方式)

1、创建数据库,dump阿里云RDS数据,导入到自建MySQL

阿里云RDS的配置几乎不用动,只需从RDS开一个只读的账号出来。

在ECS服务器上远程导出RDS的数据库,执行下面命令,记得将[]内容替换掉

mysqldump -h http://***.mysql.rds.aliyuncs.com -u [USER] -P 3306 -p[PASSWORD] --opt --default-character-set=utf8 --triggers --hex-blob [库名] > 1010.sql

dump下来之后,再去ECS中的 mysql> 中导入dump文件:

create schema 库名 collate utf8mb4_general_ci; -- 注意和RDS库名保存一致,字符集也是一样
use [库名];
source 1010.sql; 

2、停止从库自建MySQL,修改从库my.cnf 配置

service mysqld stop

修改ECS中自建的从库 MySQL 配置文件,在[mysqld]最后添加如下

vi /etc/my.cnf 

server-id =1234567890 #不可与RDS主库id相同
port = 3306  #端口!!!需要更改
replicate-do-db =test #需要同步的数据库!!!需要更改

binlog_format = row #日志文件格式
#log-bin = mysql-bin
#log-bin-index = mysql-bin.index
#relay-log = relay-log
#relay_log_index = relay-log.index
#slave-skip-errors = all

gtid_mode = on #开启gtid模式
enforce_gtid_consistency = on
log-slave-updates = 1
sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

保存后重启mysql服务

#service mysqld restart

stop slave; 

3、查询GTID,配置主从同步

主库执行,连接RDS主库,查询GTID,阿里云主库执行,复制出GTID

show global variables like 'gtid_purged';

从库执行,注意修改GTID

# 注意替换gtid
set global gtid_purged = 'f357055d-31ab-****-a651-00163e00f***:1-45184469';

reset master;



CHANGE MASTER TO
MASTER_HOST='***.mysql.rds.aliyuncs.com',
MASTER_PORT=3306,
MASTER_USER='user',
MASTER_PASSWORD='pwd',
master_auto_position=1;

reset slave;

start slave;

show slave status\G;

大功告成,阿里云RDS MySQL与自建MySQL数据库进行主从同步。


可能遇到的问题:

问题:mysqldump: Got errno 11 on write

可能的问题:例如磁盘空间不足、文件权限问题等。

我出现这个问题就是/tmp 磁盘空间不足导致的 ,我将dump的文件放到tmp下

其他:

-- 查询当前已经执行过的gtid

use mysql;
SELECT * FROM gtid_executed;

gtid_purged:需要跳过的gtid

set @@global.gtid_purged='';


 

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
购买阿里云RDS数据库主从架构,在处理大量并发访问和高负载时可以提供更可靠的服务。主库用于处理写操作,而从库则用于读取数据。 在购买前,我们需要考虑以下几个问题: 1. 数据库规格与容量:需要根据自己的业务需求选择不同的数据库规格和容量。 2. 数据库引擎:阿里云RDS支持MySQL、SQL Server、PostgreSQL、PPAS等数据库引擎,根据自己的业务需求进行选择。 3. 可用区:在不同的可用区部署主从架构可以提高服务可用性。 购买阿里云RDS数据库主从架构的步骤如下: 1. 登录阿里云官网,进入RDS控制台。 2. 创建主实例:在控制台中选择“创建实例”,选择“主从版”,选择数据库引擎、规格和容量等。创建完毕后,可以通过主实例管理界面查看主库的相关信息。 3. 创建从实例:在控制台中选择“创建实例”,选择“只读实例”,选择与主库相同的数据库引擎、规格和容量等。创建完毕后,可以通过从实例管理界面查看从库的相关信息。 4. 配置主从关系:在主实例管理界面中,选择“主备实例列表”,在页面下方点击“添加只读实例”,选择刚刚创建的从实例即可。 购买完毕后,我们需要对主从架构进行测试和监控。我们应该确保主从同步正常,避免数据同步延迟过大,以及保障读操作可以在从库正常进行。同时,也应该对RDS进行定时备份,以免发生数据丢失的风险。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值