Error number: MY-010708; Symbol: ER_NDB_BINLOG_REMAINING_OPEN_TABLE_INFO; SQLSTATE: HY000
Message: %s.%s state: %u use_count: %u
。
错误说明
MySQL错误ER_NDB_BINLOG_REMAINING_OPEN_TABLE_INFO显示在用户在MySQL NDB Cluster语句log_bin_trust_function_creators之前尝试定义函数的时候,某些binlog(比如open_tables_state)无法被安全处理。
常见案例
当用户试图创建函数并尝试使用log_bin_trust_function_creators时,这个错误可能会出现。通常情况下,这个错误出现是由于用户试图在MySQL NDB Cluster环境中创建函数。该环境在处理log_bin_trust_function_creators之前使用binlogs时可能会出现这个错误。
解决方法
要解决ER_NDB_BINLOG_REMAINING_OPEN_TABLE_INFO,第一步是在MySQL NDB Cluster环境中,使用log_bin_trust_function_creators重新设置以支持函数的创建。此外,更新MySQL NDB Cluster中binlogs以解决此错误也是必要的。
最后,也可以在cluster中重置MySQL NDB Cluster Binlogs,以确保有正确的binlog记录。重置Binlogs需要在MySQL NDB Cluster Shell中运行reset_logs命令,如下所示:
RESET_LOGS;
对于普通的MySQL设置,可以使用reset_logs的简单调用方式:
RESET MASTER;