wordpress更新php7.4后mysql连接问题

问题

Warning: mysqli_connect(): (HY000/2002): No such file or directory

更新完php7.4 后,再访问wordpress后,出现了上述的错误(开启DEBUG)。

定位

  1. 先单独通过mysql 命令在本地测试确认mysql服务正常。
  2. 检查wp-config.php的配置,没有问题
  3. 检查php的mysql支持,通过phpinfo()确认mysql支持没问题
  4. 初步锁定在php访问mysql的这个过程。

mysql status

登录mysql 后,通过status命令产看mysql socket:

UNIX socket:        /tmp/mysql.sock

php中mysql的配置

  1. 确认php.ini的配置文件路径:
# php --ini
Configuration File (php.ini) Path: /etc
Loaded Configuration File:         /etc/php.ini
  1. 通过phpinfo()页面来确认mysql的socket配置:
pdo_mysql.default_socket
mysqli.default_socket

解决

通过上面的过程,发现phpinfo页面和mysql实际的socket文件不一致,于是修改php.ini:

pdo_mysql.default_socket=/tmp/mysql.sock
mysqli.default_socket=/tmp/mysql.sock

或者修改my.cnf中相关:

[client]
socket=/tmp/mysql.sock
[mysqld]
socket=/tmp/mysql.sock

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注