检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
源数据库参数SQL_MODE包含不允许的sql_mode值:no_engine_substitution。 处理建议 修改源数据库的参数值。 如果为自建的MySQL数据库,可通过命令行方式修改。 SET sql_mode = '修改后的值'; 如果为RDS for MySQL实例,可通过修改数据库sq
table然后create table的DDL操作。 多对一映射场景,再编辑时,若新增的表之前已同步过、做过多对一映射并且设置过附加列,需要对该表重新设置附加列,否则默认保持上一次同步时的附加列设置。 检查无误后,单击“下一步”,进入下一步操作。 数据过滤 数据过滤规则添加后,在源库执行更新操作的处理原则,以数据一致为首要目标。即:
在“任务确认”页面,设置回放任务的启动时间、任务异常通知设置、SMN主题、任务异常自动结束时间,并确认任务信息无误后,单击“启动任务”,提交回放任务。 图9 任务启动设置 表11 任务启动设置 参数 描述 启动时间 回放任务的启动时间可以根据业务需求,设置为“立即启动”或“稍后启动”。
在“任务确认”页面,设置回放任务的启动时间、任务异常通知设置、SMN主题、任务异常自动结束时间,并确认任务信息无误后,单击“启动任务”,提交回放任务。 图8 任务启动设置 表10 任务启动设置 参数 描述 启动时间 回放任务的启动时间可以根据业务需求,设置为“立即启动”或“稍后启动”。
DS for MySQL运维人员进行处理。 目标数据库为MySQL 5.5版本,则不支持设置GTID,无法使用DRS进行灾备,请创建迁移任务或联系运维人员进行处理。 目标数据库为MySQL 5.6及以上版本,通过修改数据库配置文件中如下参数开启GTID,然后重启数据库。 参考命令如下:
MySQL->MySQL实时迁移和同步 全量阶段失败报错,关键词“Table *** doesn't exist” 全量阶段失败报错,关键词“The background process is unavailable” 全量阶段失败报错,关键词“Communications link
S for MySQL运维人员进行处理。 源数据库为MySQL 5.5版本,则不支持设置GTID,无法使用DRS进行同步、灾备任务,请创建迁移任务或联系运维人员进行处理。 源数据库为MySQL 5.6及以上版本,通过修改数据库配置文件中如下参数开启GTID,然后重启数据库。 参考命令如下:
创建ECS(MySQL服务器) 购买弹性云服务器,用于安装MySQL社区版。 登录华为云管理控制台。 单击管理控制台左上角的,选择区域“华南-广州”。 单击页面左上角,选择“计算 > 弹性云服务器 ECS”。 单击“购买云服务器”。 配置弹性云服务器参数。 选择通用计算型s6.xlarge
所在行单击“远程登录”。 选择“CloudShell登录”。 输入root用户密码,完成登录。 root用户密码为您创建弹性云服务器过程中设置的密码。 初始化磁盘 执行如下命令,创建mysql文件夹。 mkdir /mysql 执行如下命令,查看数据盘信息。 fdisk -l 回显如下:
数据库参数检查 源数据库binlog日志是否开启 源数据库binlog格式检查 源数据库expire_logs_days参数检查 源数据库和目标数据库的字符集是否一致 源数据库参数server_id是否符合增量迁移要求 源数据库和目标数据库表名大小写敏感性检查 源数据库中是否存在非ASCII字符的对象名称
tartup和flush logs等操作会触发binlog清理,从而导致任务失败。 处理建议 在源库执行以下命令,设置binlog保存时间。其中“value”为设置的binlog保存时间,取值为大于0的整数。 set global expire_logs_days=“value”
在“任务确认”页面,设置同步任务的启动时间、任务异常通知设置、SMN主题、时延阈值、任务异常自动结束时间,并确认同步任务信息无误后,勾选协议,单击“启动任务”,提交同步任务。 图10 任务启动设置 表14 任务启动设置 参数 描述 启动时间 同步任务的启动时间可以根据业务需求,设置为“立即启动”或“稍后启动”。
方案概述 本实践介绍在华为云弹性云服务器 ECS上构建社区版MySQL和创建TaurusDB实例,并使用数据复制服务DRS将本地MySQL数据库的数据迁移至TaurusDB。通过DRS提供的实时迁移任务,实现在数据库迁移过程中业务中断时间最小化。 应用场景 企业业务高速发展,传统数据库扩容性差,迫切需要分布式化改造。
以上讲述的是精细配置白名单的方法,还有一种简单设置白名单的方法,在安全允许的情况下,可以将源数据库MySQL实例的网络白名单设置为0.0.0.0/0,代表允许任何IP地址访问该实例。 上述的网络白名单是为了进行数据迁移设置的,迁移结束后可以删除。 目标数据库安全规则设置: 目标数据库默认与DRS迁
详细可参考解除/设置只读。 解除只读后,灾备任务续传再次进入灾备中后,灾备数据库会自动变为只读。DRS灾备数据库实例解除/设置只读的最终结果,还会受到数据库实例本身的读写设置影响,故在使用DRS迁移设置目标库实例读写设置时,建议不要同时在RDS实例页面进行读写设置。 灾备任务结束后,灾备数据库也将变为读写状态。
目标库读写设置是实例级还是库级 配置迁移任务时,目标数据库实例可以选择设置为“只读”或者“读写”状态。 只读:目标数据库整个实例将转化为只读、不可写入的状态,迁移任务结束后恢复可读写状态,此选项可有效地确保数据迁移的完整性和成功率,推荐此选项。 读写:目标数据库可以读写,但需要避
本云为备 本地自建MySQL数据库 ECS自建MySQL数据库 其他云上MySQL数据库 RDS for MySQL RDS for MySQL 本云为主 RDS for MySQL 本地自建MySQL数据库 ECS自建MySQL数据库 其他云上MySQL数据库 RDS for MySQL
自定义,易理解可识别。 其他云MySQL 数据库版本 MySQL 5.7 - IP地址 10.154.217.42 仅作为示例。 端口 3306 - RDS for MySQL实例 RDS实例名称 rds-mysql 自定义,易理解可识别。 数据库版本 MySQL 5.7 - 实例类型 单机
目标数据库是否冲突 MySQL迁移场景 表1 目标数据库是否冲突 预检查项 目标数据库是否冲突。 描述 检查目标数据库是否正在被别的迁移任务使用,当多个迁移任务使用同一个目标数据库,可能会导致迁移失败。 不通过提示及处理建议 不通过原因:RDS实例已经在其他的迁移任务中。 处理建
通用使用建议 在使用DRS前,您需要了解: DRS支持从数据库同版本或低版本到高版本的迁移,不支持从高版本迁移到低版本。 数据库迁移与环境多样性和人为操作均有密切关系,为了确保迁移的平顺,建议您在进行正式的数据库迁移之前进行一次演练,可以帮助您提前发现问题并解决问题。 如果您使用