在ECS上轻松搭建RDS的从实例

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 由于一些特殊的原因,某燃气公司线下ECS上需要在ECS上搭建一套从库,需要同步RDS数据库的数据(mysql5.7版本)。实现RDS for mysql与线下ECS上自建数据库数据实时同步,阿里云官方推荐使用DTS方式进行。原因有两个:

场景

由于一些特殊的原因,某燃气公司线下ECS上需要在ECS上搭建一套从库,需要同步RDS数据库的数据(mysql5.7版本)。

实现RDS for mysql与线下ECS上自建数据库数据实时同步,阿里云官方推荐使用DTS方式进行。原因有两个:

1、mysql-bin正常情况下,RDS在本地只保存18个小时

2、当RDS实例切换时,会影响自建ECS数据同步(这个经过测试可以排除)

一方面考虑到使用DTS工具会产生不少的费用(长期使用),另一方面,在数据库中一个地区对应一个库,后续业务无法事先规划好库名,此时如果使用dts可能需要购买多个通道,进行配置,比较费时费力且费钱。基于这两个原因的考虑,某燃气公司决定使用搭建主从复制方式来实现数据同步。以下是搭建RDS与ECS主从复制过程

操作步骤

配置RDS主实例

  1. 登录 RDS 控制台,选择目标实例。

    .    配置从实例读取数据使用的只读账号和授权数据库。
    .    将ECS的从实例的 IP 地址加入主实例的 IP 白名单中
    .    登录主实例
    .    查询主实例的 server-id。
    
# show variables like 'server_id';

系统返回如下信息:
+-------------------------+-----------------+
| Variable_name           | Value           |
+-------------------------+-----------------+
| server_id               |678888899909      |
| server_id_bits          | 32              |
+-------------------------+-----------------+

配置ECS上从实例

  1. 安装 MySQL 从实例。
    MySQL 安装包和安装方法,这里略,这里建议安装percona版本的mysql。

停止从实例 mysql 服务。

.    修改从实例 mysql 配置文件。

1)打开从实例 MySQL 配置文件。
vim /etc/my.cnf

.    配置从实例的 server-id 和要同步的数据库。
server-id               =  123456789              
log_bin=/data/dbdata/mysql-bin 
expire_logs_days        =  7
max_binlog_size         =  100M
replicate-ignore-db     =  mysql                  #不需要同步的数据库
replicate-ignore-db     =  information_schema     #不需要同步的数据库
replicate-ignore-db     =  performance_schema     #不需要同步的数据库
replicate-ignore-db     =  sys     #不需要同步的数据库
  1. 配置 GTID 同步模式,binlog 格式为 row,以兼容主实例。
#GTID
gtid_mode=on
enforce_gtid_consistency=on
binlog_format=row                             #设置 binlog 为 row
log-slave-updates=1
  1. 执行如下命令,查看 binlog 配置结果。
# show variables like '%binlog_format%';
系统返回如下信息:
+-------------------------+-----------------+
| Variable_name           | Value           |
+-------------------------+-----------------+
| binlog_format           | ROW             |
+-------------------------+-----------------+
  1. 将主实例数据全量同步到从实例。
    方式一:通过dts进行数据实时同步

方式二:通过mysqldump进行导出数据库及导入数据
注:这里大家应该比较熟悉,就不详细介绍

.    登录数据库,设置同步选项。
mysql>change master to master_host = 'rds服务地扯', master_port = 3306, master_user = 'root', master_password='masterpassword', master_auto_position = 1;
  1. 启动从实例。
mysql>slave start;
  1. 检查同步结果。
mysql>show slave status\G
查看系统返回信息中 Slave_IO_Running 和 Slave_SQL_Running 的状态是否为 Yes,如下所示。
 Slave_IO_Running: Yes
 Slave_SQL_Running: Yes

注: Slave_IO_Running、Slave_SQL_Running两个参数均为yes,表示IO进程及SQL进程都正常,表示配置RDS主从实例成功。

邮件告警功能

由于mysql-binlog在RDS上正常情况下只保存18个小时,此时必须要对从库及主库状态进行控制,防止从库没有应用日志,RDS主库上的日志就已经删除,这节内容会在下一篇文章中描述。下面会配合lepus监控软件实现邮件告警的功能。

via 卓见云技术服务团队

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6天前
|
存储 关系型数据库 MySQL
环比、环比增长率、同比、同比增长率 ,占比,Mysql 8.0 实例(最简单的方法之一)(sample database classicmodels _No.2 )
环比、环比增长率、同比、同比增长率 ,占比,Mysql 8.0 实例(最简单的方法之一)(sample database classicmodels _No.2 )
28 1
|
6天前
|
SQL 前端开发 关系型数据库
全表数据核对 ,行数据核对,列数据核对,Mysql 8.0 实例(sample database classicmodels _No.3 )
全表数据核对 ,行数据核对,列数据核对,Mysql 8.0 实例(sample database classicmodels _No.3 )
17 0
全表数据核对 ,行数据核对,列数据核对,Mysql 8.0 实例(sample database classicmodels _No.3 )
|
2天前
|
机器学习/深度学习 弹性计算 缓存
阿里云服务器经济型e实例与通用算力型u1实例对比分析与选择指南
在阿里云服务器的实例规格中,经济型e实例和通用算力型u1实例是很多个人和普通企业级用户常见的选择,经济型e实例与通用算力型u1实例的主要区别在于性能、应用场景及价格策略。本文将详细对比这两种实例的性能、应用场景及价格策略,以供参考。
|
3天前
|
弹性计算 开发框架 .NET
阿里云服务器购买教程及云服务器地域、实例、操作系统、带宽等参数选择指南
对于初次购买阿里云服务器的用户来说,想使用阿里云服务器搭建网站或者运行APP、小程序等项目,第一步就是要先购买阿里云服务器,下面小编以图文形式给大家介绍一下阿里云服务器的购买流程,以及购买过程中如何云服务器地域、实例、带宽等关键配置和选择这些参数的一些注意事项,以供参考。
|
11天前
|
存储 缓存 编解码
阿里云服务器2核8G、4核16G、8核32G选择经济型、通用算力型和计算型实例参考
如果我们计划购买的云服务器配置是2核8G、4核16G、8核32G配置,在阿里云目前的活动中,可选的实例规格有经济型e、通用算力型u1、通用型g7、通用型g8y等几个实例规格可选,由于不同实例规格的性能和价格及适用场景不同,因此,有的新手用户可能不知道如何选择,本文为大家介绍在2核8G、4核16G、8核32G这三种配置下,经济型、通用算力型和通用型实例的选择问题,以供参考。
|
8天前
|
关系型数据库 MySQL Java
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
这篇文章是关于如何使用Django框架配置MySQL数据库,创建模型实例,并自动或手动创建数据库表,以及对这些表进行操作的详细教程。
32 0
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
|
10天前
|
存储 机器学习/深度学习 应用服务中间件
阿里云倚天云服务器实例:计算型c8y、通用型g8y、内存型r8y实例介绍
阿里云倚天云服务器是基于阿里云自研的倚天710 ARM架构CPU打造的高性能计算产品系列,它依托先进的第四代神龙架构,旨在为用户提供稳定可预期的超高效能体验。倚天云服务器在存储、网络性能及计算稳定性方面实现了显著提升,主要得益于其芯片级的快速路径加速技术。本文将深度解析阿里云倚天云服务器的计算型c8y、通用型g8y、内存型r8y实例,探讨其优势及适用场景,以供选择参考。
|
1月前
|
分布式计算 大数据 数据挖掘
阿里云服务器计算型c8i、通用型g8i、内存型r8i实例测评与价格参考
阿里云服务器计算型c8i、通用型g8i、内存型r8i实例是阿里云的第八代云服务器实例规格,是除了计算型c7和c8y、通用型g7与g8y、内存型r7与r8y之外同样深受用户喜欢的云服务器实例规格。本文将详细介绍阿里云第八代云服务器中的计算型c8i、通用型g8i、以及内存型r8i实例,包括它们的技术特性、适用场景以及最新的活动价格信息。
阿里云服务器计算型c8i、通用型g8i、内存型r8i实例测评与价格参考
|
1月前
|
编解码 前端开发 安全
通过阿里云的活动购买云服务器时如何选择实例、带宽、云盘
在我们选购阿里云服务器的过程中,不管是新用户还是老用户通常都是通过阿里云的活动去买了,一是价格更加实惠,二是活动中的云服务器配置比较丰富,足可以满足大部分用户的需求,但是面对琳琅满目的云服务器实例、带宽和云盘选项,如何选择更适合自己,成为许多用户比较关注的问题。本文将介绍如何在阿里云的活动中选择合适的云服务器实例、带宽和云盘,以供参考和选择。
通过阿里云的活动购买云服务器时如何选择实例、带宽、云盘
|
1月前
|
弹性计算 运维 安全
阿里云轻量应用服务器和经济型e实例区别及选择参考
目前在阿里云的活动中,轻量应用服务器2核2G3M带宽价格为82元1年,2核2G3M带宽的经济型e实例云服务器价格99元1年,对于云服务器配置和性能要求不是很高的阿里云用户来说,这两款服务器配置和价格都差不多,阿里云轻量应用服务器和ECS云服务器让用户二选一,很多用户不清楚如何选择,本文来说说轻量应用服务器和经济型e实例的区别及选择参考。
阿里云轻量应用服务器和经济型e实例区别及选择参考