[MySQL] File ‘./mysql-bin.index’ not found (Errcode: 13)
MySQL をソースコードからインストールして、初期化後、起動したらエラーが発生したときの解決方法をご紹介します。
前提条件 MySQL インストール
ちなみに、MySQLをソースコードからインストールする手順はこちらから。
エラー Starting MySQL.The server quit without updating PID file
MySQLを起動するとエラーが発生しました。
# service mysql start Starting MySQL.The server quit without updating PID file (/[失敗]cal/mysql/data/bms.pid). |
エラーの原因調査
詳しくエラー内容を見るために、直接 path を指定して実行した結果が以下のとおりです。
# /usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ /usr/local/mysql/bin/mysqld: File './mysql-bin.index' not found (Errcode: 13) 111102 16:31:21 [ERROR] Aborting 111102 16:31:21 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete |
mysql-bin.indexというファイルがないみたいで、実際に存在しませんでした。
原因は /usr/local/mysql 以下の全てのディレクトリの権限が root になっていたせいでした。
エラーの解決方法
mysql_install_db でMySQLの初期化を実行する前に、chown でディレクトリの権限を root から mysql に変更する必要があります。
ディレクトリの権限を mysql ユーザに変更して、
chown -R mysql:mysql /usr/local/mysql/ |
MySQLの初期化をすればOKです。
/usr/local/mysql/scripts/mysql_install_db \ --user=mysql \ --basedir=/usr/local/mysql \ --datadir=/usr/local/mysql/data |
以上、File ‘./mysql-bin.index’ not found (Errcode: 13) エラーを解決した、現場からお送りしました。
参考情報
- まったり東京+ mysqld: File './mysql-bin.index' not found (Errcode: 13)
- :: MySQL 5.018 インストール | サラリーマンブログ ::
- ubuntu9.04 で mysql 5.1.33 のインストール – kameidの備忘録 – Sharpen the Saw!