2012-02-02 1 views
6

phpMyAdminがDBを開くと、テーブルがクラッシュしたかどうかがすぐにわかります。したがって、phpMyAdminはCHECK TABLEまたはANALYZE TABLEを実行していないようです。MySQLがクラッシュしたテーブルを確認する

誰もがこの情報をすばやく効率的に入手するために何をしているのか分かりませんか?

答えて

5

私は

SHOW TABLE STATUS FROM `db` 

は、あなたが探しているものであることを賭けます。

thisラインをご覧ください。私はENGINEが空(空)の場合、テーブルが壊れている可能性があると考えます。

+0

これは役に立ちそうだが鉱山ではない状況があるかもしれません。 'SHOW TABLE STATUS'は、私が壊れているテーブルの状態に何の違いも与えません。 – mc0e

3

シェルアクセス権を持っている場合はmysqlanalyzeユーティリティが役立ちます。

mysqlcheck -u mydbuser -p mydbname

このユーザーmydbuserを使用し、そのためのプロンプトmydbnameにアクセスします:

mysqlanalyze dbname 

Official Documentation

3
show table status where comment like '%crash%'; 
+0

私はこれを受け入れられた答えよりも好きです。なぜなら、受け入れられた答えでは、SHOW文のコンテキスト内で簡単にLIKEを使用できることは明らかではないからです。 (また、私はCOMMENT!= ""が好きです。) – HoldOffHunger

0

私が見つけた最も効率的な方法は、コマンドラインmysqlcheckツールを使用することですユーザーのパスワード次に、指定されたデータベースの各テーブルをチェックします。

https://dev.mysql.com/doc/refman/5.7/en/mysqlcheck.html

を参照してください。注:これはphpMyAdminのは、それをしない方法はないので、これは厳密には、元の質問に対する答えではありませんが、Googleはここmysql show crashed tablesのための検索を送信するため、私はここにこれを入れています。

関連する問題