XAMPPのデータベースは起動しなくなることがままある
何らかの拍子にWindowsがダウンしたりすると、MariaDBが起動しなくなることがある。
割と重めに使っていると2年に1度くらいは発生し、そのたびにバックアップを探したり、なくなく作り直したり、最悪諦めなければならないこともある。
対処法としてよく見かけるのは「ポートの重複確認」や「壊れたファイルだけ退避」というものがあるが、表題のエラーであれば復旧できる可能性がある。
エラーログを見てみると
Please run aria_chk -r on all Aria tables and delete all aria_log.
となっているのでこの指示に従うだけ。
対処法1. aria_logファイルを削除してみる
-
XMAPPのインストールパス\mysql\data
にある、aria_log とつく2ファイルを削除する- aria_log.00000001
- aria_log_control
- MariaDBを起動する
これだけで動けば御の字。
対処法2. aria_chk -r コマンドを実行する
対処法1で動かなかった場合、修復コマンドを実行してみる必要がある。
ただ、aria_chk -r
だけでは動かず、対象のファイルを指定する必要がある。
それが、XMAPPのインストールパス\mysql\data\mysql
に入っている MAIファイルである。
- コマンドプロンプト(PowerShell)を起動
-
XMAPPのインストールパス\mysql\bin
に移動 -
.\aria_chk -r XMAPPのインストールパス\mysql\data\mysql\*.MAI
を実行する - MariaDBを起動する
私はこちらで無事に復旧できた。
まとめ
2年に1回くらい壊れるんだけどなんとかならないものか。
特に個人PCだとWindowsUpdateと停電は天敵。
インストール版のMariadb(MySQL)なら大丈夫とかある?ないよね・・・
定期的にバックアップ取るしかないか・・・