MySQL Error number: MY-010316; Symbol: ER_AUTHCACHE_USER_TABLE_DODGY; SQLSTATE: HY000 报错 故障修复 远程处理
文档解释
Error number: MY-010316; Symbol: ER_AUTHCACHE_USER_TABLE_DODGY; SQLSTATE: HY000
Message: Fatal error: Could not read the column ‘authentication_string’ from table ‘mysql.user’. Please perform the MySQL upgrade procedure.
MY-010316:ER_AUTHCACHE_USER_TABLE_DODGY(SQLSTATE:HY000)错误
错误说明:
MY-010316错误是MySQL服务器的一个内部错误,它的消息等级为ERROR,让用户知道MySQL服务器表的可疑的规范化过程中出现了错误。 具体而言,此错误表明MySQL服务器在规范用户表和验证缓存时发现了错误,这将影响MySQL执行服务器授权检查。
常见案例
此错误可能由各种因素引起,其中之一是用户表结构发生更改(例如表列更新),但MySQL服务器中的缓存尚未更新。这可能是由于未正确调用flush_privileges或更改但未将权限刷新到缓存中的其他未知原因。另一种情况是服务器已在重新启动后载入旧的文件,而该文件已失效或不可用。
解决方法:
要解决此错误,请使用mysqladmin flush-privileges命令重新加载用户表以刷新其从磁盘实例化中装入缓存。在确认更改后,重新启动数据库服务器也将有助于解决此错误。如果错误仍然存在,同时具有root权限,请尝试重新安装服务器,重新启动安装过程;或者你可以尝试恢复上次备份的数据库。