MySQL->RDS for MySQL 环境要求 实时迁移对环境有一些特定的要求,请确保环境配置满足以下条件。该类型的要求系统会自动检查,并给出处理建议。 类型名称 使用限制 (DRS自动检查) 数据库权限设置 全量迁移最小权限要求: 源数据库帐户需要具备如下权限: SELECT、SHOW VIEW、EVENT。 目标数据库帐号必须拥有如下权限: SELECT、CREATE、ALTER、DROP、DELETE、INSERT、UPDATE、INDEX、EVENT、CREATE VIEW、CREATE ROUTINE、TRIGGER、WITH GRANT OPTION。 全量+增量最小迁移权限要求: 源数据库帐户需要具备如下权限: SELECT、SHOW VIEW、EVENT、LOCK TABLES、REPLICATION SLAVE、REPLICATION CLIENT。 目标数据库帐号必须拥有如下权限: SELECT、CREATE、ALTER、DROP、DELETE、INSERT、UPDATE、INDEX、EVENT、CREATE VIEW、CREATE ROUTINE、TRIGGER、WITH GRANT OPTION。 用户迁移最小权限要求: 用户迁移时,当源数据库为非阿里云数据库时,帐户需要有mysql.user的SELECT权限,源数据库为阿里云数据库,则帐户需要同时具有mysql.user和mysql.userview的SELECT权限。 目标数据库帐户需要有mysql库的SELECT,INSERT,UPDATE,DELETE权限。 迁移对象约束 支持数据库、表、视图、索引、约束、函数、存储过程、触发器(TRIGGER)和事件(EVENT)的迁移。 不支持系统库的迁移以及事件状态的迁移。 不支持非MyISAM和非InnoDB表的迁移。 源数据库要求 源数据库中的库名不能包含:' /"以及非ASCII字符。 源数据库中的表名、视图名不能包含:'<>/"以及非ASCII字符。 源数据库中的库名不允许为iblogfile。 MySQL源数据库的binlog日志必须打开,且binlog日志格式必须为Row格式。 在磁盘空间允许的情况下,建议源数据库binlog保存时间越长越好,建议为3天。 源数据库expirelogsdays参数值为0,可能会导致迁移失败。 增量迁移时,必须设置MySQL源数据库的serverid。如果源数据库版本小于或等于MySQL5.6,serverid的取值范围在2-4294967296之间;如果源数据库版本大于或等于MySQL5.7,serverid的取值范围在1-4294967296之间。 MySQL源数据库建议开启skipnameresolve,减少连接超时的可能性。 源数据库GTID状态建议为开启状态。 源库不支持mysql binlog dump命令。 源数据库和目标数据库字符集需保持一致,否则迁移失败。 源数据库logslaveupdates参数需设置为开启状态,否则会导致迁移失败。 源数据库的binlogrowimage参数需设置为FULL,否则会导致迁移失败。 源数据库MySQL8.0目前不支持参数lowercasetablenames等于0的迁移。 目标数据库要求 不支持从高版本迁移到低版本。 建议MySQL目标库的binlog日志格式为Row格式,否则增量迁移可能出错。 目标数据库实例的运行状态必须正常。 目标数据库实例必须有足够的磁盘空间。 除了MySQL系统数据库之外,目标数据库不能包含与源数据库同名的数据库。 建议目标库的事务隔离级别至少保证在已提交读。 DRS迁移时会有大量数据写入目标库,目标库maxallowedpacket 参数过小会导致无法写入,建议将目标库maxallowedpacket参数值设置大一点,使其大于100MB。 目标数据库GTID状态建议为开启状态。 源数据库和目标数据库的参数serveruuid相同, 将导致增量迁移失败。 源数据库和目标数据库的参数collationserver需保持一致,否则可能导致迁移失败。 所选迁移对象和外键依赖的表需一起进行迁移,否则会导致迁移失败。 源数据库和目标数据库的参数timezone需保持一致,否则可能导致迁移失败。 源数据库和目标数据库的sqlmode参数值需保持一致,否则可能导致迁移失败。 迁移的对象中包含引擎为MyISAM的表,则目标数据库sqlmode不能包含noenginesubstitution参数,否则可能会导致迁移失败。 源数据库和目标数据库的innodbstrictmode参数值需保持一致,否则可能导致迁移失败。 目标数据库和源数据库的lowercasetablenames参数需保持一致,否则可能导致迁移失败。 目标数据库的logbintrustfunctioncreators参数需设置为on,否则可能导致迁移失败。