今天在一台服务器配置了PHP的环境 Centos 7.4 + PHP7.2+Nginx 1.12.2
结果在连接数据库的时候卡了半天,使用PDO连接数据库,一直无法连上。纪录下排查的过程。
报错如下:
Uncaught PDOException: SQLSTATE[HY000] [2003] Can't connect to MySQL server on
首先,我使用mysql 客户端直接连接数据库,测试通过可以连接。
然后我在想是不是少了什么扩展,查看了下安装的扩展pdo,pdo_mysql
扩展都有安装,还有一个扩展php72w-mysql
也都有安装,证明扩展没问题,但是还是无法连接数据库。
我想是不是框架有问题,所以简单写了个测试脚本,就一行pdo连接数据库代码。在cli
模式下执行,测试通过,连接成功。把同样的代码扔到框架入口文件执行,再次连接失败。
我意思到可能是cli
模式下的问题.
后面搜索了下类似问题,尝试了好多种方法之后,关闭SELinux
之后就连接成功了。
执行命令
setenforce 0
再次连接,测试成功。
问题是解决了,但是具体原因还不知道。道。