PHP无法连接Mariadb
最近重新安装了服务器环境,单独安装了Nginx,PHP,MariaDb,但是配置好Nginx服务后,访问网站却提示错误。
故障
故障表现:  网站wordpress提示建立数据库连接时出错
测试发现,Mysql命令行能够登录,但PHP无法连接。
排查
PHPinfo
使用phpinfo(),查询是否安装Mysql扩展,查询到已经安装mysqli扩展
同时使用如下php代码查询
| 1 | <?php | 
返回yes,说明已经安装mysqli扩展
php 数据库链接测试
使用如下代码测试
| 1 | <?php | 
返回Connect DB error,说明PHP与Mysql未建立连接。查到问题后就很好解决了。
原因 PHP与Mysql未建立通信链接,因为php与mysql是分别安装的,未配置php.ini的相关选项
解决
查询Mysql sock路径
| 1 | show variables like 'socket'; | 
| 1 | MariaDB [(none)]> show variables like 'socket'; | 
php.ini配置Mysql socket路径
编辑php.ini,找到mysql.default_socket配置项或者``mysqli.default_socket,默认一般是空值,将此项添加值为上面回显中的/var/lib/mysql/mysql.sock`:
| 1 | ; Default socket name for local MySQL connects. If empty, uses the built-in | 
重启PHP
| 1 | service php-fpm restart | 
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 螃蟹壳!
