MySQL重置root密码,刷新权限表报错ERROR 1146(42S02):Table ‘mysql.servers’ doesn`t exist


报如上图所示错误,然而到mysql库中,看servers表还能看到,运行网上的解决方案直接创建servers表依然报错无法解决。

后来发现一个解决方案如下:

1、drop table if exists mysql.servers;

2、运行表创建脚本

 CREATE TABLE `servers` (
        `Server_name` char(64) NOT NULL,
        `Host` char(64) NOT NULL,`Db` char(64) NOT NULL,
        `Username` char(64) NOT NULL,
        `Password` char(64) NOT NULL,
        `Port` int(4) DEFAULT NULL,
        `Socket` char(64) DEFAULT NULL,
        `Wrapper` char(64) NOT NULL,
        `Owner` char(64) NOT NULL,
        PRIMARY KEY (`Server_name`)
        ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='MySQL Foreign Servers table';

3、再次运行flush privileges;

即可恢复正常。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM