Error number: MY-013509; Symbol: ER_LOG_PRIV_CHECKS_REQUIRE_ROW_FORMAT_NOT_SET; SQLSTATE: HY000
Message: PRIVILEGE_CHECKS_USER for replication channel ‘%s’ can’t be set to `%s`@`%s` unless REQUIRE_ROW_FORMAT is also set to %d.
Error Number: MY-013509; Symbol: ER_LOG_PRIV_CHECKS_REQUIRE_ROW_FORMAT_NOT_SET; SQLSTATE: HY000
错误说明:
MY-013509是一个MySQL错误代码。它的标志是ER_LOG_PRIV_CHECKS_REQUIRE_ROW_FORMAT_NOT_SET,而SQLSTATE是HY000。该错误意味着当尝试在MySQL服务器上启用ROW_FORMAT_NOT_SET参数时发生了一个严重的问题。该错误也表明,由于某种原因,ROW_FORMAT_NOT_SET参数未能被正确实施。
ROW_FORMAT_NOT_SET参数可以防止MySQL中的操作,包括分区,不会导致更改表格格式。因此,如果该参数未能正确实施,那么这些操作将会不成功,并导致MY-013509错误发生。此外,还有可能出现此错误的其他情况:例如,在MySQL服务器中尝试改变表格或数据行的格式。
解决方法:
1. 使用sudo权限登录MySQL服务器,然后在MySQL提示符下运行以下命令:
SET GLOBAL log_priv_checks = ON;
2. 然后在MySQL提示符下运行以下命令:
SET ROW_FORMAT_NOT_SET = ‘ON’;
3. 最后,重新启动MySQL服务器,以允许新设置生效。
另外,强烈建议查看MySQL日志,以了解错误发生的更多详细信息。