LinuxのWebサーバ経由でMysqlに接続しようとすると[2002]Permission deniedというエラー出る場合の対処法

SELinuxが有効になっている場合、PHP等でmysqlに接続しようとすると次のエラーが出る場合がある。
SQLSTATE[HY000] [2002] Permission denied
上記エラーが発生する場合、SELinuxのhttp_can_network_connect(httpd経由のネットワーク接続)という変数をonにすると使用できるようになる。

1.現状確認
getsebool httpd_can_network_connect

2.変更
setsebool -P httpd_can_network_connect 1

3.変更後確認
getsebool httpd_can_network_connect

関連書籍
TECHNICAL MASTER はじめてのCentOS8 Linuxサーバエンジニア 標準テキスト CentOS 8 構築・運用・管理パーフェクトガイド [CentOS Stream対応] DVD付 CentOS徹底入門 第3版
※本記事はアフィリエイトリンクを含みます。

コメント