1. 程式人生 > >tablespace innodb_index_stats is missing

tablespace innodb_index_stats is missing

innodb_index_stats 表損壞 mysql mysqldump

導入mysqldump過程中,手賤(手殘)按到 ctrl+alt+z 。
導致此進程終止(暫停),因為當時 執行查看進程時候 ps -ef|grep mysql 。然後還能看到進程
mysql -uroot -p < back.sql
技術分享圖片

估計是這個進程暫停了。

ctrl+c 結束進程後,進入到控制臺,查詢導入的表,也卡住不動。。。

查看 innodb_trx,innodb_waits,innodb_wait_locks;
三張表也沒有問題。

查看錯誤日誌,導致下圖報錯。

問題見圖:
技術分享圖片

哇,瞬間爆炸。

然後網上查辦法:

都是刪表後重建:innodb_table_stats

下面是步驟:
1.

use mysql

mysql>show create table innodb_index_stats;

ERROR1146(42S02):Table‘mysql.innodb_index_stats‘doesn‘texist

刪掉損壞的表:
drop table innodb_index_stats;

2 rm 掉mysql目錄下面的
技術分享圖片

重建表:問題來了建表sql在哪?

find / -name mysql_system_tables.sql
技術分享圖片

查到這個sql腳本後,vi 找到對應sql--> 進行建表

技術分享圖片

3 可能會建表失敗,看看drop表後再mysql目錄下是不是有該表殘留文件,如果有rm掉。重建表

建表成功後即可。

tablespace innodb_index_stats is missing