检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
MySQL存储过程迁移上云后遇到调用权限的问题,如何解决 MySQL存储过程迁移上云后,可能会因为权限问题导致调用存储过程或函数出错。 针对该情况,不同的Definer策略有不同的处理方法。本章节主要以user1为示例,介绍两种迁移Definer的策略下的处理方法。 策略一 在测试连接页
据库和目标数据库的情况下,只需要配置迁移的源、目标数据库实例及迁移对象即可完成整个数据迁移过程,再通过多项指标和数据的对比分析,帮助确定合适的业务割接时机,实现最小化业务中断的数据库迁移。 通过增量迁移技术,能够最大限度允许迁移过程中业务继续对外提供使用,有效的将业务系统中断时间
源数据库的表名是否合法 MySQL迁移场景 表1 源数据库的表名是否合法 预检查项 源数据库的表名是否合法。 描述 检查源数据库表名是否合法,若存在不合法的字符,会导致实时同步失败。 不通过提示及处理建议 不通过原因:源数据库中表名存在不支持的字符:非ASCII字符、>、<、/、\。
数据复制服务是否支持关系型数据库的HA实例迁移 数据复制服务的高可用性保障机制,可以支持关系型数据库的单实例和HA实例的迁移。针对HA实例的迁移,DRS的自动重连技术在连接短暂中断后连接可以得到修复,断点续传技术,根据数据库内部连续性标志可以确保实时同步的连续性和一致性。 源数据库的HA设计,满足
处理建议:修改包含非法字符的数据库库名或者返回到对象选择页面迁移合法库名的数据库。 MongoDB迁移场景 表2 源数据库库名是否合法 预检查项 源数据库库名是否合法。 描述 该项校验源数据库的库名中是否包含非法的字符,若包含非法字符会导致迁移失败。 不通过原因:源数据库库名包含不支持的字符:“.”、“<”、“>”和“'”。
源数据库的集合名是否合法 MongoDB迁移场景 表1 源数据库集合名称是否合法 预检查项 源数据库集合名称是否合法。 描述 该项校验源数据库的集合名中是否包含非法的字符,若包含非法字符会导致迁移失败。 不通过原因:源数据库集合名包含不支持的字符:“'”、“<”和“>”。 处理建
全部迁移:仅迁移任务支持选择,选择后源数据库中的所有对象全部迁移至目标数据库,对象迁移到目标数据库实例后,对象名将会保持与源数据库实例对象名一致且无法修改。 表级迁移或同步:以表为单位的迁移或同步,库中新增表不会自动加入迁移或同步关系中。如果同步任务,可以通过再次编辑同步对象,将新的表追加到同步关系中;迁移任务启动后不支持编辑迁移对象。
迁移对象未选择外键依赖的表 MySQL迁移和同步场景 表1 迁移对象未选择外键依赖的表 预检查项 迁移对象未选择外键依赖的表。 描述 在进行迁移时,需要将所选迁移对象和外键依赖的表一起进行迁移,否则会导致迁移失败。 待确认提示及处理建议 不通过原因:迁移对象中存在外键依赖的表未被选择迁移。
适用于有事务要求的场景,写入性能比较差,如果没有强事务要求,不推荐使用此选项。 按表的主键值hash值投递到不同的Partition 适用于一个表一个Topic的场景,避免该表都写到同一个分区,消费者可以并行从各分区获取数据。 按表的非主键列值的hash值投递到不同的Partition
本示例中,DRS源数据库为本地自建Oracle数据库,目标端为华为云上的分布式数据库中间件DDM,通过公网网络,将源端的数据同步到目标端,部署架构可参考图1。 图1 公网场景 使用说明 本实践的资源规划仅作为演示,实际业务场景资源以用户实际需求为准。 本实践端到端的数据为测试数据,仅供参考;更多关于DRS使相关内容请单击这里了解。
选择自建OBS桶。 桶名 选择备份文件所在的桶名,以及该桶目录下上传好的新的增量备份文件。 说明: Microsoft SQL Server的备份文件需要选择OBS桶目录下“.bak”格式的文件名,且可以同时选择多个备份文件。 不支持将一个库分割成不同文件上传。 该桶的桶名、备份文件名或者路径中不能包含中文。
conf,建议原有的sha256不动,在sha256的配置前一行配置指定单任务同步用户的trust。 CN节点配置: host replication <user> 0.0.0.0/0 sha256 图1 CN节点配置图 DN节点配置: host replication <user> 0.0
DRS对比任务取消后,数据库有对比任务的查询进程未结束 以源库Mysql数据库为例,进行行数对比,取消对比任务,在源库有对比任务的查询进程未及时结束,清理残留进程,按照如下步骤操作: 使用管理员权限用户登录Mysql数据库,执行show processlist; 按照Host和Command获取Id
Server本身的设计,数据库一旦收到还原已完成的信号,便会做一系列的内部工作并把数据库置为可用,已无法继续增量备份迁移。此时,只能删除备份数据库重新进行全量+增量的备份还原。 选择“否”,但期望为是,即不希望继续恢复增量备份迁移。其实SQL Server没有严格意义上的的最后一个备份文件,此时可以再做一个增
盖原来的冲突数据。 过滤DROP DATABASE 实时同步过程中,源数据库端执行的DDL操作在一定程度上会影响数据的同步能力,为了降低同步数据的风险,数据复制服务提供了过滤DDL操作的功能,目前支持默认过滤删除数据库的操作。 是,表示过程中不会同步用户在源数据库端执行的删除数据库的操作。
Server数据库能与本地数据库的数据实时同步吗 目前Microsoft SQL Server数据库目前不支持与本地数据库数据的实时同步,如果是上云迁移,可以使用备份迁移。备份迁移支持Microsoft SQL Server的增量迁移,可以有效的缩短业务割接时间。 如果是上云实时
备份迁移失败,提示备份的源数据库不在备份文件列表中 操作场景 客户通过OBS桶全量备份数据迁移上云时,提示备份的源数据库不在备份文件列表中,导致迁移失败。 图1 备份迁移 问题分析 用户上传到OBS桶中的.bak数据库备份文件名较长。 解决方案 针对以上问题,提供如下解决方案:
源库指定名称的复制槽是否存在 指定复制槽时,指定名称的复制槽是由DRS在启动后自动创建的,不可以是源数据库中已经存在的复制槽。 不通过原因 用户指定的复制槽在源数据库中已存在。 处理建议 请在源数据库中删除该名称的复制槽,或着指定其他源数据库不存在的复制槽名称。 父主题: 数据库参数检查
检查目标库的max_allowed_packet参数 MySQL或MariaDB的迁移和同步场景,目标库的max_allowed_packet参数值小于100MB时,会导致目标库无法写入造成全量迁移失败。 不通过原因 目标库的max_allowed_packet参数值过小导致目标库数据无法写入造成全量迁移失败。
源库存在不支持的生成列检查 当源库存在生成列是主键或者唯一键的表时,DRS在同步表结构时不同步生成列结构,可能导致数据同步到目标库后与源库不一致。 不通过原因 源库存在生成列是主键或者唯一键的表。 处理建议 在目标库自建表结构,保证目标库的生成列的逻辑、约束与源库一致后,返回对象