MariaDB:MariaDB のログに「 InnoDB: Error: Table “mysql”.”innodb_table_stats” not found. 」と出てた時の対処方法

標題のエラーログが発生するの件 MySQL5.6 のバグである模様です。チケット参照: Bug #67179。対応手順をまとめました。(2017/11/19作成)

Database Free-Photos / Pixabay

0.環境

[crayon]
$ mysql –version
mysql Ver 15.1 Distrib 10.1.29-MariaDB, for Linux (x86_64) using readline 5.1
[/crayon]

1.エラーログ例

[crayon]
Nov 14 14:15:36 linuxserver systemd: Started MariaDB database server.
Nov 14 14:15:39 linuxserver mysqld: 2017-11-14 14:15:39 7fd1fadcf700 InnoDB: Error: Table “mysql”.”innodb_table_stats” not found.
[/crayon]

2.修正手順

1)mysqlコンソール上で作業

[crayon]
mysql> use mysql
Database changed
mysql> drop table innodb_index_stats;
Query OK, 0 rows affected, 1 warning (0.06 sec)
mysql> drop table innodb_table_stats;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> drop table slave_master_info;
ERROR 1051 (42S02): Unknown table ‘mysql.slave_master_info’
mysql> drop table slave_relay_log_info;
ERROR 1051 (42S02): Unknown table ‘mysql.slave_relay_log_info’
mysql> drop table slave_worker_info;
ERROR 1051 (42S02): Unknown table ‘mysql.slave_worker_info’
[/crayon]

2)対象テーブルの「.frmと「.ibd」ファイルを削除

[crayon]
$ sudo rm -vrf innodb_index_stats*
`innodb_index_stats.ibd’ を削除しました
$ sudo rm -vrf innodb_table_stats*
`innodb_table_stats.ibd’ を削除しました
$ sudo rm -vrf slave_master_info*
$ sudo rm -vrf slave_relay_log_info*
$ sudo rm -vrf slave_worker_info*
[/crayon]

3)テーブル修正ファイルの取得

[crayon]
$ wget -O five-tables.sql http://bugs.mysql.com/file.php?id=19725
[/crayon]

4)テーブル修正ファイルの適用

[crayon]
$ mysql -uroot -p mysql < ./five-tables.sql [/crayon] 5)MariaDB 再起動 [crayon] $ sudo systemctl restart mariadb.service [/crayon] 以上 [amazonjs asin="4797393114" locale="JP" title="基礎からのMySQL 第3版 (基礎からシリーズ)"]

About yoshimasa

埼玉県さいたま市在住、2男3女のパパです。Linux系の技術情報を中心にまとめています。1978年2月生まれ。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください