問題
systemctl を使用して MySQL を起動しようとすると、起動に失敗します。例:
# systemctl status mysqld ● mysqld.service - MySQL Server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: inactive (dead) Docs: man:mysqld(8) http://dev.mysql.com/doc/refman/en/using-systemd.html
# systemctl start mysqld Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
解決策
これには複数の原因が考えられます。いくつかの (ただしこれに限定されない) 例は次のとおりです:
- MySQL 構成ファイルの構成オプションのタイプミス。
- MySQL 構成ファイルに使用されなくなったオプションが存在する。
- ファイル システム レベルの権限が正しくありません。
MySQL が起動しない原因となっているエラーを調査するには、いくつかのソースを使用できます。
1. MySQL エラー ログ
デフォルトでは、これは /var/log/mysqld.log にあります ただし、log-error の場合は別の場所にある可能性があります オプションは、MySQL 構成ファイルで設定されます。これは開始するのに最適な場所ですが、エラーによっては、起動プロセスが MySQL エラー ログに書き込むのに十分ではない場合もあります。
2. 「systemctl status mysqld」の出力を確認
「systemctl status mysqld」の出力も、失敗の原因を特定するのに役立ちます。
# systemctl status mysqld
3. systemd ジャーナル
systemd ジャーナルは、障害の根本原因を突き止めるのに役立ちます。たとえば、以下を使用して対話的に閲覧できます:
# journalctl -xe
仕訳帳をアップロードしてベンダーに分析してもらう必要がある場合は、その場所を特定する必要があります。これはシステム固有です。たとえば、デフォルト設定では、CentOS/RHEL 7 のジャーナルは /run/log/journal/ の下のサブディレクトリにあります。 たとえば、/run/log/journal/1ffd55f216ea46bd82d0f144065cc29b/system.journal です。別の場所は /var/log/journal かもしれません。
または、次のように日誌をエクスポートできます:
# journalctl > journal.log
エラー メッセージが特定されたら、それを使用して根本原因を調査します。
CentOS/RHEL、SUSE、OEL の ASMLib / oracleasm RPM の場所
CentOS / RHEL 7 に VNC (TigerVNC) サーバーをインストールして構成する方法