MySQL 5.7:InnoDB: Table mysql
.innodb_table_stats
not found
问题描述
本机安装了MySQL 5.7版本,在重启之后MySQL服务之后,发现系统应用日志提示错误:
InnoDB: Table mysql
.innodb_table_stats
not found
异常原因:
查阅资料之后,发现可能是用于原来存在的InnoDB表的数据文件发生了损坏,所以删除旧的数据文件之后,重新使用Create语句创建
解决方案:
1、在mysql数据库执行 show tables; 发现是存在表 innodb_table_stats
2、在MySQL安装路径下也发现了 innodb_table_stats 表的数据文件
3、但是执行语句 show create table innodb_table_stats
后发现提示Table'mysql.innodb_table_stats' doesn't exist
,则有可能是数据文件损坏导致异常
4、在MySQL安装路径下share文件夹中的mysql_system_tables.sql文件,打开文件,找到innodb_table_stats表的Create语句
5、删除安装路径下 innodb_table_stats 表的数据文件
6、数据库中执行innodb_table_stats表的Create语句,执行成功之后,再次执行语句 show create table innodb_table_stats
。