MySQLのテーブル破損してる! error 145

朝起きてみると、ブログに下記のようなメッセージが出ていました。

Can’t open file: ‘nucleus_item.MYI’ (error: 145)

MySQLはまったくと言っていいほど素人なので、nucleus_item.MYI と 145でググってみたところ、
ちゃだろぐさんとこの「データベースが破損!? その3 解決
で解決策がかかれてありました。

さっそくやろうと思ったところ、そういえばうちのサーバにはphpMyAdminが入っていない!orz
ということで、まずインストールから。
ports一発!

# cd /usr/ports/databases/phpmyadmin/
# make install clean

次はphpMyAdminの設定です。
そして、/usr/local/www/phpMyAdmin/にて

# cp config.default.php config.inc.php

とコピーしてから
PmaAbsoluteUri と passwordのところを追加。
パーミッションは660あたりになっていることを確認。

Apacheを(HUPではなくて)再起動する。
phpmyadminにアクセスする。
このディレクトリは.htaccessで自分だけ入れるように設定してあります。

しかーし、ちゃだろぐさんの記事に書いてあるように、「チェックしたもの」というのが
そもそも表示されていない。orz

またググってみたところ、この手のエラーはMovableTypeでも発生している模様。
http://nanitozo.com/log/euri/archives/001878.html

上記のサイトで、コマンドでやる方法がありました。

nucleus_item.MYIが存在しているところに行って、以下のコマンドを打ちました。

# cd /var/db/mysql/DBファイル名/
# myisamchk -o nucleus_item.MYI

これで復活しました。


About this entry