将MySQL迁移到MySQL 增量数据迁移支持的SQL操作 DML INSERT、UPDATE、DELETE。 DDL 增量迁移的DDL操作仅支持CREATE INDEX、DROP INDEX、ALTER TABLE、TRUNCATE TABLE 和DROP TABLE,如果是整库迁移,支持CREATE TABLE。 注意 暂不支持 CREATE TABLE 表名 AS SELECT 语句。 数据库账号及权限 数据库账号及权限如下表: 数据库 所需权限 参考赋权语句 源库 源库为MySQL5.7时: 对MySQL库的SELECT权限。 对待迁移库的SELECT,EVENT,TRIGGER权限。 部分全局权限: REPLICATION CLIENT REPLICATION SLAVE SHOW VIEW PROCESS 如果是整实例迁移,需要对所有数据库的查询权限。 源库为MySQL8.0时: 对MySQL库的SELECT权限。 对待迁移库的SELECT, EXECUTE, EVENT,TRIGGER权限。 部分全局权限: PROCESS REPLICATION CLIENT REPLICATION SLAVE SHOW VIEW SHOWROUTINE 如果是整实例迁移,需要对所有数据库的查询权限。 源库为MySQL5.7时: GRANT SELECT ON mysql. TO '迁移账号'@'%'; GRANT SELECT, EVENT,TRIGGER ON 待迁移的库. TO '迁移账号'@'%'; GRANT RELOAD, REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW, PROCESS ON . TO '迁移账号'@'%'; 源库为MySQL8.0时: GRANT SELECT ON mysql. TO '迁移账号'@'%'; GRANT SELECT, EXECUTE, EVENT, TRIGGER ON 待迁移的库. TO '迁移账号'@'%'; GRANT RELOAD, PROCESS, REPLICATION SLAVE, REPLICATION CLIENT, SHOW VIEW, SHOWROUTINE ON . TO '迁移账号'@'%'; 目标库 以下全局权限: SHOW DATABASES PROCESS CREATE USER 以下18项 库权限: ALTER ALTER ROUTINE CREATE CREATE ROUTINE CREATE TEMPORARY TABLES CREATE VIEW DELETE DROP EVENT EXECUTE INDEX INSERT REFERENCES SELECT SHOW VIEW TRIGGER UPDATE GRANT SELECT ON mysql. TO '迁移账号'@'%'; GRANT SHOW DATABASES,PROCESS,CREATE USER ON . TO '迁移账号'@'%'; GRANT ALTER, ALTER ROUTINE, CREATE, CREATE ROUTINE, CREATE TEMPORARY TABLES,CREATE VIEW, DELETE ,DROP, EVENT, EXECUTE, INDEX, INSERT, REFERENCES, SELECT, SHOW VIEW, TRIGGER, UPDATE ON 待迁移库. TO '迁移账号'@'%'; 注意 如果待迁移对象包含用户自定义function,则在满足上述权限的基础上,目标端数据库同时需将logbintrustfunctioncreators参数设置为1,参考语句如下: set global logbintrustfunctioncreators 1;