如何将阿里云ecs迁移本地RDS MySQL数据迁移复制到ClickHouse?

本文介绍如何使用数据传输服务DTS(Data Transmission Service),将Amazon RDS MySQL迁移至阿里云RDS MySQL或RDS MySQL Serverless。DTS支持结构迁移、全量数据迁移以及增量数据迁移,同时使用这三种迁移类型可以实现在自建应用不停服的情况下,平滑地完成数据库迁移。前提条件为保障DTS能够通过公网连接至Amazon RDS MySQL,需要将Amazon RDS MySQL的公开访问设置为是。已创建阿里云RDS MySQL或RDS MySQL Serverless实例,详情请参见快速创建RDS MySQL实例。阿里云RDS MySQL的存储空间须大于Amazon RDS MySQL已使用的存储空间。注意事项DTS在执行全量数据迁移时将占用源库和目标库一定的读写资源,可能会导致数据库的负载上升,在数据库性能较差、规格较低或业务量较大的情况下(例如源库有大量慢SQL、存在无主键表或目标库存在死锁等),可能会加重数据库压力,甚至导致数据库服务不可用。因此您需要在执行数据迁移前评估源库和目标库的性能,同时建议您在业务低峰期执行数据迁移(例如源库和目标库的CPU负载在30%以下)。如果源库中待迁移的表没有主键或唯一约束,且所有字段没有唯一性,可能会导致目标数据库中出现重复数据。对于数据类型为FLOAT或DOUBLE的列,DTS会通过ROUND(COLUMN,PRECISION)来读取该列的值。如果没有明确定义其精度,DTS对FLOAT的迁移精度为38位,对DOUBLE的迁移精度为308位,请确认迁移精度是否符合业务预期。DTS会自动地在阿里云RDS MySQL中创建数据库,如果待迁移的数据库名称不符合阿里云RDS的定义规范,您需要在配置迁移任务之前在阿里云RDS MySQL中创建数据库。 说明 关于阿里云RDS的定义规范和创建数据库的操作方法,请参见创建数据库。对于迁移失败的任务,DTS会触发自动恢复。在您将业务切换至目标实例前,请务必先结束或释放该任务,避免该任务被自动恢复后,导致源端数据覆盖目标实例的数据。费用说明迁移类型链路配置费用公网流量费用结构迁移和全量数据迁移不收费。通过公网将数据迁移出阿里云时将收费,详情请参见计费概述。增量数据迁移收费,详情请参见计费概述。迁移类型说明结构迁移 DTS将迁移对象的结构定义迁移到目标实例,目前DTS支持结构迁移的对象为表、视图、触发器、存储过程、存储函数,不支持event的结构迁移。全量数据迁移 DTS会将Amazon RDS MySQL中待迁移对象的存量数据,全部迁移到阿里云RDS MySQL中。 增量数据迁移 在全量迁移的基础上,DTS会读取Amazon RDS MySQL的binlog信息,将Amazon RDS MySQL的增量更新数据同步到阿里云RDS MySQL中。通过增量数据迁移可以实现在应用不停服的情况下,平滑地完成MySQL数据库的迁移。数据库账号的权限要求数据库结构迁移全量迁移增量迁移Amazon RDS MySQLSELECT权限SELECT权限REPLICATION CLIENT、REPLICATION SLAVE、SHOW VIEW和SELECT权限阿里云RDS MySQL或RDS MySQL Serverless读写权限读写权限读写权限数据库账号创建及授权方法:迁移前准备工作登录Amazon RDS控制台。在左侧导航栏,单击数据库。单击目标数据库实例的数据库标识符。在安全组规则区域框,单击入站规则对应的安全组名称。在安全组页面,单击目标安全组 ID。在入站规则页签,单击编辑入站规则。在编辑入站规则页面,单击添加规则,将对应区域的DTS服务器地址添加至入站规则后,单击保存规则。DTS服务的IP地址段详情,请参见迁移、同步或订阅本地数据库时需添加的IP白名单。登录Amazon RDS MySQL数据库,设置Binlog日志保存时间。如果不需要增量数据迁移,可跳过本步骤。操作步骤(新版控制台)进入迁移任务的列表页面。登录DMS数据管理服务。在顶部菜单栏中,单击集成与开发(DTS)。在左侧导航栏,选择数据传输(DTS) > 数据迁移。在迁移任务右侧,选择迁移实例所属地域。单击创建任务,配置源库及目标库信息。配置完成后,单击页面右下角的测试连接以进行下一步。如果您的自建数据库具备白名单安全设置,您需要复制弹跳框中的DTS服务器IP地址,并加入自建数据库的白名单安全设置中。然后单击测试连接以进行下一步。配置任务对象及高级配置。单击下一步高级配置,进行高级配置。数据校验配置若您需要使用数据校验功能,配置方法请参见配置数据校验。高级配置配置说明选择调度该任务的专属集群DTS默认将任务调度到共享集群上,您无需选择。您可以购买指定规格的专属集群来运行DTS迁移任务,详情请参见什么是DTS专属集群?。设置告警是否设置告警,当迁移失败或延迟超过阈值后,将通知告警联系人。复制源表Online DDL工具执行过程的临时表到目标库若源库使用数据管理DMS(Data Management)或gh-ost执行Online DDL变更,您可以选择是否迁移Online DDL变更产生的临时表数据。重要 DTS任务暂不支持使用pt-online-schema-change等类似工具执行Online DDL变更,否则会导致DTS任务失败。是:迁移Online DDL变更产生的临时表数据。说明 Online DDL变更产生的临时表数据过大,可能会导致迁移任务延迟。否,适配DMS Online DDL:不迁移Online DDL变更产生的临时表数据,只迁移源库使用数据管理DMS(Data Management)执行的原始DDL数据。说明 该方案会导致目标库锁表。否,适配gh-ost:不迁移Online DDL变更产生的临时表数据,只迁移源库使用gh-ost执行的原始DDL数据,同时您可以使用默认的或者自行配置gh-ost影子表和无用表的正则表达式。说明 该方案会导致目标库锁表。源库、目标库无法连接后的重试时间在迁移任务启动后,若源库或目标库连接失败则DTS会报错,并会立即进行持续的重试连接,默认持续重试时间为720分钟,您也可以在取值范围(10~1440分钟)内自定义重试时间,建议设置30分钟以上。如果DTS在设置的重试时间内重新连接上源库、目标库,迁移任务将自动恢复。否则,迁移任务将失败。说明 针对同源或者同目标的多个DTS实例,如DTS实例A和DTS实例B,设置网络重试时间时A设置30分钟,B设置60分钟,则重试时间以低的30分钟为准。由于连接重试期间,DTS将收取任务运行费用,建议您根据业务需要自定义重试时间,或者在源和目标库实例释放后尽快释放DTS实例。源库、目标库出现其他问题后的重试时间在迁移任务启动后,若源库或目标库出现非连接性的其他问题(如DDL或DML执行异常),则DTS会报错并会立即进行持续的重试操作,默认持续重试时间为10分钟,您也可以在取值范围(1~1440分钟)内自定义重试时间,建议设置10分钟以上。如果DTS在设置的重试时间内相关操作执行成功,迁移任务将自动恢复。否则,迁移任务将会失败。重要 源库、目标库出现其他问题后的重试时间的值需要小于源库、目标库无法连接后的重试时间的值。是否限制全量迁移速率在全量迁移阶段,DTS将占用源库和目标库一定的读写资源,可能会导致数据库的负载上升。您可以根据实际情况,选择是否对全量迁移任务进行限速设置(设置每秒查询源库的速率QPS、每秒全量迁移的行数RPS和每秒全量迁移的数据量(MB)BPS),以缓解目标库的压力。说明 仅当迁移类型选择了全量迁移时才可以配置。是否限制增量迁移速率您也可以根据实际情况,选择是否对增量迁移任务进行限速设置(设置每秒增量迁移的行数RPS和每秒增量迁移的数据量(MB)BPS),以缓解目标库的压力。说明 仅当迁移类型选择了增量迁移时才可以配置。环境标签您可以根据实际情况,选择用于标识实例的环境标签。本示例无需选择。配置ETL功能选择是否配置ETL功能。关于ETL的更多信息,请参见什么是ETL。是:配置ETL功能,并在文本框中填写数据处理语句,详情请参见在DTS迁移或同步任务中配置ETL。否:不配置ETL功能。是否去除正反向任务的心跳表sql根据业务需求选择是否在DTS实例运行时,在源库中写入心跳SQL信息。上述配置完成后,单击页面下方的下一步保存任务并预检查。 预检查通过率显示为100%时,单击下一步购买。在购买页面,选择数据迁移实例的链路规格,详细说明请参见下表。配置完成后,阅读并选中《数据传输(按量付费)服务条款》。单击购买并启动,迁移任务正式开始,您可在数据迁移界面查看具体进度。操作步骤(旧版控制台)登录数据传输控制台。在左侧导航栏,单击数据迁移。在迁移任务列表页面顶部,选择迁移的目标集群所属地域。单击页面右上角的创建迁移任务。配置迁移任务的源库及目标库信息。配置完成后,单击页面右下角的授权白名单并进入下一步。选择迁移对象及迁移类型。上述配置完成后,单击页面右下角的预检查并启动。预检查通过后,单击下一步。在弹出的购买配置确认对话框,选择链路规格并选中数据传输(按量付费)服务条款。单击购买并启动,迁移任务正式开始。将业务切换至阿里云RDS。
云数据库ClickHouse是面向联机分析处理的列式数据库,基于大宽表的聚合分析查询性能非常优异,比其他分析型数据库速度快一个数量级,通过数据传输服务DTS(Data Transmission Service),您可以将MySQL数据库(例如自建MySQL或RDS MySQL)同步至ClickHouse集群,帮助您轻松实现数据的流转,将企业数据集中分析。本文以RDS MySQL实例为例,介绍从RDS MySQL同步至ClickHouse集群的配置步骤。前提条件源库中待同步的数据表必须具备主键。已创建目标ClickHouse集群,详情请参见新建集群。说明 ClickHouse集群的存储空间需大于源RDS MySQL实例已使用的存储空间。已在目标ClickHouse集群创建用于接收数据的数据库,详情请参见创建数据库。重要 建议ClickHouse集群中创建的数据库名称与源RDS MySQL实例待同步数据所属的数据库名称一致,否则您需要在配置任务对象及高级配置阶段,在已选择对象框中使用库名映射功能。设置方式,请参见库表列名映射。注意事项类型说明源库限制其他限制若源RDS MySQL的DDL语句不是标准的MySQL语法,则可能导致同步任务失败或数据丢失。不支持同步RENAME TABLE的操作。云数据库ClickHouse的DateTime类型数据的时间范围为[1970-01-01 00:00:00,2106-02-07 06:28:15],若RDS MySQL中的时间不在该范围内,会导致同步到云数据库ClickHouse的时间不正确。分区键不可以选择为可空的字段,否则同步任务将会失败。待同步数据库的数量符合云数据库ClickHouse的限制,即不超过256个。待同步数据库、表和列的名称符合云数据库ClickHouse的命名规范,相关规范请参见对象命名规范限制。若目标ClickHouse的集群类型为社区版,DTS会在目标表中增加字段_sign和_version;若目标ClickHouse的集群类型为企业版,则不会增加字段。说明 增量任务会在_version字段中记录数据写入社区版ClickHouse的时间戳,在_sign字段记录DML操作的类型(INSERT和UPDATE记录为1,DELETE记录为-1)。执行数据同步前需评估源库和目标库的性能,同时建议业务低峰期执行数据同步。否则全量数据初始化时将占用源库和目标库一定的读写资源,可能会导致数据库的负载上升。如同步对象为单个或多个表(非整库),那么在数据同步时,勿对源库的同步对象使用pt-online-schema-change等类似工具执行在线DDL变更,否则会导致同步失败。您可以使用数据管理DMS(Data Management)来执行在线DDL变更,请参见不锁表结构变更。在DTS同步期间,不允许有除DTS外的数据写入目标库,否则会导致源库与目标库数据不一致。其他注意事项当源库为自建MySQL时:在同步时,如果源库进行主备切换,将会导致同步任务失败。由于DTS的延迟时间是根据同步到目标库最后一条数据的时间戳和当前时间戳对比得出,源库长时间未执行DML操作可能导致延迟信息不准确。如果任务显示的延迟时间过大,您可以在源库执行一个DML操作来更新延迟信息。说明 如果同步对象选择为整库,您还可以创建心跳表,心跳表每秒定期更新或者写入数据。DTS会在源库定时执行CREATE DATABASE IF NOT EXISTS `test`命令以推进Binlog位点。当源库为RDS MySQL时:不支持不记录事务日志的RDS MySQL只读实例(如RDS MySQL 5.6版本)作为源实例。费用说明同步类型链路配置费用库表结构同步和全量数据同步不收费。增量数据同步收费,详情请参见计费概述。支持同步的SQL操作操作类型SQL操作语句DMLINSERT、UPDATE、DELETEDDL数据类型映射关系由于MySQL和ClickHouse集群支持的数据类型不同,数据类型无法一一对应。所以DTS在进行结构初始化时,会根据目标库支持的数据类型进行类型映射,详情请参见结构初始化涉及的数据类型映射关系。数据库账号的权限要求数据库所需权限创建及授权方式源RDS MySQL待同步对象的读权限。创建账号和修改账号权限。目标ClickHouse集群社区兼容版账号管理和企业版账号管理说明 若您使用的源库账号不是通过RDS MySQL控制台创建且授权,您需确保该账号具备REPLICATION CLIENT、REPLICATION SLAVE、SHOW VIEW和SELECT权限。操作步骤进入同步任务的列表页面。登录DMS数据管理服务。在顶部菜单栏中,单击集成与开发(DTS)。在左侧导航栏,选择数据传输(DTS) > 数据同步。在同步任务右侧,选择同步实例所属地域。单击创建任务,配置源库及目标库信息。配置完成后,单击页面下方的测试连接以进行下一步。配置任务对象及高级配置。配置说明同步类型固定选中增量同步。默认情况下,您还需要同时选中库表结构同步和全量同步。预检查完成后,DTS会将源实例中待同步对象的全量数据在目标集群中初始化,作为后续增量同步数据的基线数据。目标已存在表的处理模式目标库对象名称大小写策略您可以配置目标实例中同步对象的库名、表名和列名的英文大小写策略。默认情况下选择DTS默认策略,您也可以选择与源库、目标库默认策略保持一致。更多信息,请参见目标库对象名称大小写策略。源库对象在源库对象框中单击待同步对象,然后单击将其移动至已选择对象框。说明 同步对象的选择粒度为库、表、列。已选择对象单击下一步高级配置,进行高级配置。配置说明选择调度该任务的专属集群DTS默认将任务调度到共享集群上,您无需选择。您可以购买指定规格的专属集群来运行DTS同步任务,详情请参见什么是DTS专属集群。设置告警是否设置告警,当同步失败或延迟超过阈值后,将通知告警联系人。源库、目标库无法连接后的重试时间在同步任务启动后,若源库或目标库连接失败则DTS会报错,并会立即进行持续的重试连接,默认持续重试时间为720分钟,您也可以在取值范围(10~1440分钟)内自定义重试时间,建议设置30分钟以上。如果DTS在设置的重试时间内重新连接上源库、目标库,同步任务将自动恢复。否则,同步任务将会失败。源库、目标库出现其他问题后的重试时间在同步任务启动后,若源库或目标库出现非连接性的其他问题(如DDL或DML执行异常),则DTS会报错并会立即进行持续的重试操作,默认持续重试时间为10分钟,您也可以在取值范围(1~1440分钟)内自定义重试时间,建议设置10分钟以上。如果DTS在设置的重试时间内相关操作执行成功,同步任务将自动恢复。否则,同步任务将会失败。重要 源库、目标库出现其他问题后的重试时间的值需要小于源库、目标库无法连接后的重试时间的值。是否限制全量迁移速率在全量同步阶段,DTS将占用源库和目标库一定的读写资源,可能会导致数据库的负载上升。您可以根据实际情况,选择是否对全量同步任务进行限速设置(设置每秒查询源库的速率QPS、每秒全量迁移的行数RPS和每秒全量迁移的数据量(MB)BPS),以缓解目标库的压力。说明 仅当同步类型选择了全量同步时才可以配置。是否限制增量同步速率您也可以根据实际情况,选择是否对增量同步任务进行限速设置(设置每秒增量同步的行数RPS和每秒增量同步的数据量(MB)BPS),以缓解目标库的压力。环境标签您可以根据实际情况,选择用于标识实例的环境标签。本示例无需选择。配置ETL功能选择是否配置ETL功能。关于ETL的更多信息,请参见什么是ETL。是:配置ETL功能,并在文本框中填写数据处理语句,详情请参见在DTS迁移或同步任务中配置ETL。否:不配置ETL功能。单击下一步配置库表字段,配置待同步表在ClickHouse中的类型、主键列、排序键、分布键和分区键信息。说明 DTS默认配置了一组数据,您可以将定义状态选择为全部后进行修改。主键列和排序键可以是组合键,即您可以在对应的下拉框中选择多个字段作为主键列或排序键,且需要从主键列中选择1个或者多个列作分区键;分布键只能选择一个字段。更多关于主键列、排序键、分区键的信息,请参见CREATE TABLE。分区键可以不设置,但不可以选择为可空的字段,否则同步任务将会失败。保存任务并进行预检查。预检查通过率显示为100%时,单击下一步购买。在购买页面,选择数据同步实例的计费方式、链路规格,详细说明请参见下表。配置完成后,阅读并勾选《数据传输(按量付费)服务条款》。单击购买并启动,同步任务正式开始,您可在数据同步界面查看具体任务进度。

数据传输服务DTS(Data Transmission Service)支持将另一个阿里云账号下的RDS实例数据迁移至当前阿里云账号,本文将介绍跨阿里云账号数据迁移配置流程及注意事项。
阿里云数据库大全:RDS关系型数据库如MySQL版、PolarDB、PostgreSQL、SQL Server和MariaDB等,NoSQL数据库如Redis、Tair、Lindorm和MongoDB,数据仓库如AnalyticDB MySQL版、PostgreSQL、ClickHouse,阿里云还...
数据传输服务DTS(Data Transmission Service)支持将另一个阿里云账号下的RDS实例数据迁移至当前阿里云账号。本文将介绍跨阿里云账号数据迁移配置流程及注意事项。
本文介绍如何使用数据传输服务DTS(Data Transmission Service),将Amazon RDS MySQL迁移至阿里云RDS MySQL或RDS MySQL Serverless。DTS支持结构迁移、全量数据迁移以及增量数据迁移,同时使用这三种迁移类型可以实现在自建应用不停服的情况...
数据传输服务DTS(Data Transmission Service)支持对不同阿里云账号下的RDS MySQL实例(含RDS MySQL Serverless)配置数据同步,实现跨阿里云账号的数据同步。
数据传输服务DTS(Data Transmission Service)支持对不同阿里云账号下的RDS MySQL实例(含RDS MySQL Serverless)配置数据同步,实现跨阿里云账号的数据同步。
亲们, 阿里云RDS开博啦,欢迎积极灌水,多提建议! RDS博客: http://rds.blog.alibaba-inc.com/
更新时间 2023-10-07 09:09:08
本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。
社区圈子阿里云最佳实践阿里云最佳实践,是基于众多客户上云的成功案例萃取而成的最优化企业上云指导。每个最佳实践包括使用场景、多产品部署架构及部署手册。帮助客户更好地理解阿里云的产品和解决方案,降低企业上云门槛的同时满足客户自服务的需求。阿里云企业级自治数据库 RDS 详解袋鼠云基于阿里云RDS的数据库架构实践袋鼠云基于阿里云RDS的数据库架构实践立即下载立即下载立即下载相关实验场景更多

我要回帖

更多关于 阿里云ecs迁移本地 的文章

 

随机推荐