• 沒有找到結果。

ECS 自建 MySQL 迁移到 GaussDB(for MySQL)

数据复制服务(Data Replication Service,简称DRS)支持将ECS自建MySQL数据库 的数据迁移到本云云数据库GaussDB(for MySQL)。通过DRS提供的实时迁移任务,实 现在数据库迁移过程中业务和数据库不停机,业务中断时间最小化。

本章节主要介绍了通过DRS将ECS自建MySQL数据库实时迁移至本云云数据库 GaussDB(for MySQL)的任务配置流程。支持以下网络类型:

● VPC网络

● VPN(Virtual Private Network,虚拟专用网络)、专线网络

● 公网网络

迁移流程

2-20 迁移流程图

迁移建议(重要)

● 数据库迁移与环境多样性和人为操作均有密切关系,为了确保迁移的平顺,建议 您在进行正式的数据库迁移之前进行一次演练,可以帮助您提前发现问题并解决 问题,如何最小化对数据库的影响请参考如下建议。

● 强烈建议您在启动任务时选择“稍后启动”功能,将启动时间设置在业务低峰

当使用DRS将MySQL数据库的数据迁移到本云云数据库GaussDB(for MySQL)实 例时,在不同迁移类型的情况下,对源数据库和目标数据库的帐号权限要求如表 2-13:

2-13 迁移帐号权限

迁移类型 全量迁移 全量+增量迁移

源数据库 SELECT、SHOW

VIEW、EVENT。 SELECT、SHOW VIEW、EVENT、LOCK TABLES、REPLICATION SLAVE、REPLICATION CLIENT。

目标数据库 SELECT、CREATE、

DROP、DELETE、

INSERT、UPDATE、

INDEX、EVENT、

CREATE VIEW、CREATE ROUTINE、TRIGGER、

WITH GRANT OPTION。

SELECT、CREATE、

DROP、DELETE、

INSERT、UPDATE、

INDEX、EVENT、

CREATE VIEW、CREATE ROUTINE、TRIGGER、

WITH GRANT OPTION。

– 源数据库权限设置:

需要确保源数据库MySQL的帐号权限具备表2-13的要求。若权限不足,需要 在源数据库端开通高权限的帐号。目标数据库权限设置:

本云数据库GaussDB(for MySQL)使用初始帐号即可。

2. 网络准备。

– 源数据库的网络设置:

ECS自建MySQL数据库实时迁移至本云云数据库GaussDB(for MySQL)的场 景,一般可以使用VPC网络、VPN网络、专线网络和公网网络四种方式进行 迁移,您可以根据实际情况选择。一般推荐使用公网网络进行迁移,该方式 下的数据迁移过程较为方便和经济。

– 目标数据库的网络设置:

若通过公网网络访问,不需要进行任何设置。

若通过VPN、专线网络访问,请先开通华为VPN服务,确保源数据库 MySQL和目标端本云云数据库GaussDB(for MySQL)的网络互通。

若通过VPC网络访问,源数据库可以与目标端本云云数据库MySQL实例 在同一个VPC,也可以不在同一个VPC。

○ 当源库和目标库处于同一个VPC时,网络默认是互通的。

○ 当不在同一个VPC的时候,要求源数据库实例和目标端本云云数据 库MySQL实例所处的子网处于不同网段,此时需要通过建立对等连 接实现网络互通,具体操作请参见《虚拟私有云用户指南》中

“VPC对等连接”章节。

3. 安全规则准备。

a. 源数据库的白名单设置:

若通过公网网络进行迁移,源数据库MySQL实例需要将具体的DRS迁移 实例的弹性公网IP添加到其网络白名单中,确保源数据库MySQL实例可 以与上述弹性公网IP连通。在设置网络白名单之前需要获取DRS迁移实 例,具体方法如下:

迁移实例创建成功后,可在“源库及目标库”页面获取DRS迁移实例的 弹性公网IP。如图2-21所示:

2-21 迁移实例公网弹性 IP

以上讲述的是精细配置白名单的方法,还有一种简单设置白名单的方 法,在安全允许的情况下,可以将源数据库MySQL实例的网络白名单设 置为0.0.0.0/0,代表允许任何IP地址访问该实例。

若通过VPN、专线网络进行迁移,源库需要将DRS迁移实例的私有IP添加 到其网络白名单内,确保源端和目标端网络互通。

若通过VPC网络进行迁移,同一VPC场景下,默认网络是连通的。不同 VPC场景下,通过建立对等连接就可以实现网络互通。

上述的网络白名单是为了进行数据迁移设置的,迁移结束后可以删除。

b. 目标数据库安全组规则设置:

目标数据库默认与DRS迁移实例处在同一个VPC,网络是互通的,DRS可以直 接写入数据到目标数据库,不需要进行任何设置。

2. 在“实时迁移管理”页面,单击右上角“创建迁移任务”,进入迁移任务信息页 面。

3. 在“迁移实例”页面,填选任务信息和迁移实例信息。

2-14 任务和描述

参数 描述

区域 当前所在区域,可进行切换。

任务名称 任务名称在4-50位之间,必须以字母开头,不区分大小写,可以 包含字母、数字、中划线或下划线,不能包含其他的特殊字符。

描述 描述不能超过256位,且不能包含! = < > & ' " \ 特殊字符。

2-22 迁移实例信息

2-15 迁移实例信息

参数 描述

数据流动方向 选择入云。

入云指目标端数据库为本云数据库。

源数据库引擎 选择MySQL。

目标数据库引擎 选择GaussDB(for MySQL)主备版。

参数 描述

网络类型 此处选择公网网络。

默认为公网网络类型,支持VPN网络、专线网络。

– 公网网络:适合通过公网网络把其他云下或其他平台的 数据库迁移到目标数据库,该类型要求源数据库绑定弹 性公网IP。

– VPN网络:适合通过VPN网络,实现其他云下自建数据 库与云上数据库迁移、或云上跨Region的数据库之间的 迁移。

– 专线网络:适合通过专线网络,实现其他云下自建数据 库与云上数据库迁移、或云上跨Region的数据库之间的 迁移。

– VPC网络:适合云上数据库之间的迁移。

目标数据库实例 用户所创建的目标GaussDB(for MySQL)实例。

迁移模式 此处以全量+增量模式为示例。

2-16 源库信息

参数 描述

IP地址或域名 源数据库的IP地址或域名。

端口 源数据库服务端口,可输入范围为1~65535间的整数。

数据库用户名 源数据库的用户名。

数据库实例名称 默认为创建迁移任务时选择的GaussDB(for MySQL)实例,

不可进行修改。

参数 描述 所有Definer迁

移到该用户下 – 是

迁移后,所有源数据库对象的Definer都会迁移至该用户 下,其他用户需要授权后才具有数据库对象权限,如何授 权请参考MySQL迁移中Definer强制转化后如何维持原业 务用户权限体系

– 否迁移后,将保持源数据库对象Definer定义不变,选择此 选项,需要配合下一步用户权限迁移功能,将源数据库的 用户全部迁移,这样才能保持源数据库的权限体系完全不 变。

5. 在“迁移设置”页面,设置迁移对象,单击“下一步”。

2-25 设置迁移对象

2-18 迁移对象

流速的大小需要根据业务场景来设置,不能超过9999MB/s。

2-26 设置流速模式

– 不限速

对迁移速度不进行限制,通常会最大化使用源数据库的出口带 宽。该流速模式同时会对源数据库造成读消耗,消耗取决于源 数据库的出口带宽。比如源数据库的出口带宽为100MB/s,假 设高速模式使用了80%带宽,则迁移对源数据库将造成80MB/s 的读操作IO消耗。

参数 描述

7. 在“任务确认”页面,设置迁移任务的启动时间、任务异常通知设置、SMN主

该项为可选参数,开启之后,选择对应的SMN主题。当迁移任 务状态异常时,系统将发送通知。

SMN主题 “任务异常通知设置”项开启后可见,需提前在SMN上申请主 题并添加订阅。

SMN主题申请和订阅可参考《消息通知服务用户指南》。

时延阈值 在增量迁移阶段,源数据库和目标数据库之间的实时同步有时会 存在一个时间差,称为时延,单位为秒。

时延阈值设置是指时延超过一定的值后(时延阈值范围为1—

3600s),DRS可以发送告警通知。告警通知将在时延稳定超过 设定的阈值6min后发送,避免出现由于时延波动反复发送告警 通知的情况。

设置任务异常自动结束天数,输入值必须在14-100之间,默认 值14。

说明

异常状态下的任务仍然会计费,而长时间异常的任务无法续传和恢复。

设置任务异常自动结束天数后,异常且超时的任务将会自动结束,以免 产生不必要的费用。

8. 迁移任务提交后,您可在“实时迁移管理”页面,查看并管理自己的任务。 100%。“全量+增量”迁移模式:全量迁移完成后,开始进行增量迁移,可 在“迁移进度”页签下,查看增量迁移同步时延,当时延为0s时,说明源数 源库当前系统时间(current_time)与该事务在源库的提交成功时间

(committed_time)的时间差,时延为0代表源和目标瞬时一致,无新的事务需要同 步。长时间未提交事务和频繁的DDL 均可以造成高时延。

– 查看迁移对象的进度。在“进度明细”下,单击目标迁移对象“详细信息”

列的“查看详情”,查看对象的迁移进度,进入增量迁移后,该数据将不再 显示,您可以使用“迁移对比”页签,进行一致性对比。

2-30 迁移进度明细

– 查看读写数据性能。单击“监控图表”查看读写数据性能,该图表展示了实 时读取源库和写入目标库数据的速率,其单位为MB/s。

2-31 性能监控

步骤3 查看迁移日志。

1. 在“实时迁移管理”界面,选中指定迁移任务,单击任务名称。

2. 在“迁移日志”页签,查看当前迁移任务的日志,可以根据“级别”筛选查看内 容。

2-32 查看迁移日志

您可查看到日志对应的时间,级别和描述。

步骤4 对比迁移项。

1. 在“实时迁移管理”界面,选中指定迁移任务,单击任务名称,进入“基本信 息”页签。

2. 单击“迁移对比”页签,进入“迁移对比”信息页面,对源数据库和目标数据库 的数据进行对比分析。

您也可以在“实时迁移管理”界面,选中指定迁移任务,单击操作列的“查看对 比”,进入“迁移对比”页面。

a. 首先进行数据库对象完整性检查。

单击“对象检查”,进入“对象级对比”页签,单击“开始对比”后稍等一 段时间再单击 ,查看各个对比项的对比结果。

2-33 对象级对比

若需要查看对比项的对比结果详情,可单击指定对比项操作列的“详情”。

b. 数据库对象检查完成后,进行迁移数据行数及内容的对比。

如果仅需要对比全部迁移对象的行数,您也可以在“实时迁移管理”界面,

如果仅需要对比全部迁移对象的行数,您也可以在“实时迁移管理”界面,