更新时间:2023-01-05 GMT+08:00

源数据库和目标数据库表名大小写敏感性检查

MySQL迁移场景

表1 源数据库和目标数据库表名大小写敏感性检查

预检查项

源数据库和目标数据库表名大小写敏感性检查。

描述

检查源数据库和目标数据库的库名,表名的大小写敏感性。

不通过提示处理建议

不通过原因:源数据库连接失败,导致该项检查无法进行。

处理建议:查看源数据连接是否成功。

不通过原因:用户基本权限不足。

处理建议:查看对应数据库账号权限是否符合迁移要求。

不通过原因:目标数据库和源数据库的lower_case_table_names参数不一致。

处理建议

  • 如果您进行的是入云操作,请修改源数据库或者目标数据库的lower_case_table_names参数为一致。

    建议修改空数据库端的参数值,例如,若目标数据库为空,则将目标数据库lower_case_table_names参数值调整为和源数据库一致。参考命令如下:

    set global lower_case_table_names=n;

    上述语句中的“n”表示源数据库端的参数值,修改后重启数据库生效。

  • 如果您进行的是出云操作,建议参考如下方法处理。

    若目标库是自建数据库,请修改目标数据库lower_case_table_names参数,在MySQL配置文件my.cnf中的[mysqld]标签下增加一行lower_case_table_names=n(n表示的是与源数据库相同的lower_case_table_names值。),该参数修改需要重启数据库才能生效。

    若目标库是云数据库,请先检查lower_case_table_names参数是否可修改,如果无法修改,请联系技术支持人员处理。

不通过原因:目标数据库和源数据库的lower_case_table_names参数不一致,且源数据库中存在包含大写字母的库名或表名。

处理建议:请参考源库参数lower_case_table_names=1时,为什么不允许迁移包含大写字母的库或者表进行处理。

不通过原因:数据库不可用。

处理建议:请联系技术支持人员处理。