エラー エラー ログ用にファイル '***/log/mysql/error.log' を開けませんでした: 許可が拒否されました

centos系でMySQLが起動できない問題

質問:

サーバー上で mysql サービスがダウンしていることが判明しました。

命令

systemctl status mysqld

サービスが停止していることを示します

サービスを開始してみる

命令

systemctl start mysqld

エラーは次のとおりです

私は最初にそれを試し、ログを見て、最後のエラー レポートの解決策を試しました。私のエラー レポートは、PID が見つからないというものです。

また、mysql 構成ファイル、/etc/my.cnf ファイルの校正、およびファイルのアクセス許可の校正も試しましたが、すべて正しいです。 

でも結局始まらない。

そこで、システムが提案するコマンドを入力して理由を確認しました。

命令

journalctl -xe

出力は次のとおりです。

2020-12-24T06:29:14.146597Z 0 [Note] mysqld (mysqld 5.7.31-0ubuntu0.18.04.1) starting as process 2760 ...
2020-12-24T06:29:14.151841Z 0 [ERROR] Could not open file '/***/mysql/log/mysqld.log' for error logging: Permission denied
2020-12-24T06:29:14.151990Z 0 [ERROR] Aborting

エラー ログ用にファイル '/***/mysql/log/mysqld.log' を開けませんでした: 権限が拒否されました

パスは、構成したパスに関連付けられていますが、パーミッションの問題で開くことができないため、構成した mysqld.log を指す「***」に置き換えました。

インターネットで情報を調べるときは、いつも chamod や chown を使って mysql のパーミッションを変更しているのですが、何度やってもうまくいきません。

解決

結局、同僚が解決に協力してくれました (同僚 666)

次のコマンドを入力します。

setenforce 0

mysqld サービスを再起動した後:

systemctl restart mysgld

 成功を報告するエラーはありません

 

分析する

setenforce 0 の役割をオンラインで確認

SELinux を許可モードに設定し 、一時的にselinux ファイアウォールを閉じることを示します

ファイアウォールをオフにして mysqld.log を再度記録することはできますか?

正確な理由はわかりませんが、何か関係があるのか​​もしれません。

解決策、ブックマークして記録します。

おすすめ

転載: blog.csdn.net/qq_58832911/article/details/128131438