Mysqlサービスを開始しようとしています。
/etc/init.d/mysql start
戻り値:
Job failed. See system logs and 'systemctl status' for details.
さらに:
systemctl status mysql.service
戻り値:
mysql.service - LSB: Start the MySQL database server
Loaded: loaded (/etc/init.d/mysql)
Active: failed since Mon, 04 Aug 2014 16:20:43 -0400; 38s ago
Process: 14148 ExecStop=/etc/init.d/mysql stop (code=exited, status=0/SUCCESS)
Process: 16457 ExecStart=/etc/init.d/mysql start (code=exited, status=1/FAILURE)
CGroup: name=systemd:/system/mysql.service
何が起こっているのかを知る方法はありますか?
/var/log/mysql/mysqld.log
の最新のエントリ:
140805 08:52:42 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
140805 8:52:42 [ERROR] mysqld: Can't lock aria control file '/var/lib/mysql/aria_log_control' for exclusive use, error: 11. Will retry for 30 seconds
140805 8:53:13 [ERROR] mysqld: Got error 'Could not get an exclusive lock; file is probably in use by another process' when trying to use aria control file '/var/lib/mysql/aria_log_contr$
140805 8:53:13 [ERROR] Plugin 'Aria' init function returned error.
140805 8:53:13 [ERROR] Plugin 'Aria' registration as a STORAGE ENGINE failed.
140805 8:53:13 [ERROR] Failed to initialize plugins.
140805 8:53:13 [ERROR] Aborting
140805 8:53:13 [Note] /usr/sbin/mysqld: Shutdown complete
140805 08:53:13 mysqld_safe mysqld from pid file /var/run/mysql/mysqld.pid ended
/var/lib/mysql/aria_log_control
ファイルが別のプロセスによって開かれているため、mysqld
を開始できません。
現在誰が、何がファイルを開いているかを確認します。
lsof `/var/lib/mysql/aria_log_control`
開いているプロセスをリストする必要があります。
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 1506 mysql 10uW REG 253,1 52 263948 /var/lib/mysql/aria_log_control
プロセスが確実に実行されてはならない場合は、次のコマンドでシャットダウンします。
Sudo kill -SIGTERM <PID>
それが失敗した場合:
Sudo kill -SIGKILL <PID>
または再起動します。
/etc/my.cnf
ファイルに移動し、datadir
およびtmpdir
変数を確認します。それらのディレクトリに移動し、その中のファイルの権限を確認します。 root
が所有するファイルがある場合は、権限をmysql:mysql
などに変更して、再試行してください。
例:
/etc/my.cnf
で見つかりました:
datadir = /var/lib/mysql
以下を試してから、もう一度mysqlを起動してみてください。
chown mysql:mysql /var/lib/mysql
Raspberry Piでこのエラーが発生しました。 /var/lib/mysql
にアクセスして、raspberrypi.err
という名前のファイルを見つけました。その中で、起動時に/etc/mysql/my.cnf
に不要な行を見つけたことがわかりました。私の場合、問題のある行はbind-address
でしたが、調べ始めるのに適した場所かもしれません。
問題はmysql_install_db
パッケージ内のスクリプトmariadb-server-5.5.34-2.fc20
およびcommunity-mysql-server-5.5.35-1.fc20
。サーバーデータディレクトリに適切な権限を設定しません。 root
として次のコマンドを実行して修正します。
chown -R mysql:mysql /var/lib/mysql