MySQLで「Aria recovery failed.」が出た時の対処法
今回はXAMPPのMySQLで「Aria recovery failed.」というエラーが起きた時の対処法について紹介します。
▼この記事を書いたひと
フリーランスみやしも(@miyashimo_blog)です。プログラミングやWebサイト制作に関するITの情報を幅広くお届けしていきます。
MySQLの「Aria recovery failed.」とは?
XAMPPを使ってMySQLを起動した所、コントロールパネルに「MySQL shutdown unexpectedly.」というメッセージが表示されてMySQLの起動に失敗していまいました。
エラー内容と原因について
MySQLの状態を詳しく把握するためにエラーログ「mysql_error.log」を確認すると、ログには次の様なメッセージが出力されていました。
mysqld.exe: Aria recovery failed. Please run aria_chk -r on all Aria tables and delete all aria_log.######## files
翻訳すると『Ariaのリカバリーに失敗しました。全てのAriaテーブルで「aria_chk -r」を実行して、全ての「aria_log.########」ファイルを削除してください。』といった意味になります。
AriaとはMySQLやMariaDBのデータベースで使われている「ストレージエンジン」のことですが、今回はAriaで発生したエラーがMySQLが起動できない原因になっている様でした。そこでエラーメッセージが提示する次の2つの作業をこなしてAriaの復旧を試みます。
▼作業内容
- 全てのAriaテーブルで「aria_chk -r」を実行する
- 全ての「aria_log.########」ファイルを削除する
MySQLエラー対応の様子
ここからはMySQLのエラー「Aria recovery failed.」に対応する実際の様子を紹介します。
作業①:「aria_chk -r」を実行する
まずはMySQLのエラーメッセージが伝えている「aria_chk -r」のコマンドを実行します。
事前に調べて分かった事ですが「aria_chk」はAriaの情報確認や修復に使うコマンドでした。修復で使う場合はオプションに「-r」を指定し、引数には拡張子「.MAI」のファイルパスを与える仕様です。また「.MAI」とはテーブル情報やインデックスが含まれたAria関連のファイルで、XAMPPでは「mysql\data\mysql」のフォルダ配下に格納されています。
つまりは次の様にaria_chkコマンドを実行すれば、Ariaの「.MAI」ファイルの修復ができる事になります。
# コマンドがある場所に移動する
cd (XAMPPのフォルダ)\mysql\bin
# aria_chkのコマンドを実行する
.\aria_chk -r (XAMPPのフォルダ)\mysql\data\mysql\*.MAI
さっそく上記を実行したところ、無事にコマンドが作動して次の様に処理を行うことができました。
作業②:「aria_log.########」を削除する
続けて「aria_log.########」のファイルを削除します。
上記は具体的に「aria_log.」という名前が含まれたファイルのことで、いずれもMySQLの「data」フォルダ配下に置かれています。今回は「data」フォルダ配下で見つけた「aria_log.00000001」というファイル1つを削除します。
作業③:XAMPPのMySQLを起動する
エラーメッセージに従い作業を行ったら、最後にXAMPPのコントロールパネルからMySQLを起動します。
すると無事にMySQLを起動することができました。またphpMyAdminからデータベースを確認してみましたが、こちらも問題なく使えることが確認できました。
XAMPPのおすすめ記事まとめ
このほかXAMPPの利用で役立つおすすめの記事をまとめて紹介します。
インストール・基本的な使い方
XAMPPのインストール方法や基本的な使い方については次の記事から確認できます。
XAMPPカスタマイズの関連情報
XAMPPにおけるカスタマイズ関連の情報については次の記事から確認できます。
この記事のまとめ
今回はXAMPPのMySQLで「Aria recovery failed.」というエラーが出た時の対処法について紹介しました。
いずれもXAMPPを使ったプログラム開発やWebサイト制作の作業でご活用いただきたい情報です。
このほか当ブログではローカル環境に関連する情報を多数掲載しています。あわせてご活用ください。