MySQL 5.7.24搭建WordPress遇到报错“建立数据库连接时出错”的问题:
已经做了wordpress库的创建和授权,数据库连接信息的填写也跟《Web集群实战》书上安装WordPress的方法是一样的:
1、首先怀疑是数据库命令哪里敲错了,重新检查了一遍,没有发现错误。
2、下载phpMyAdmin管理工具,对MySQL数据库连接进行测试,提示“无法登录MySQL 服务器”,说明是数据库连接的问题。
3、查阅资料,得知:
连接MySQL数据库有两种方式:TCP/IP(一般理解的端口的那种)和Unix套接字(一般叫socket或者sock)。大部分情况下,可以用localhost代表本机127.0.0.1,但是在MySQL连接时,二者不可混用,而且MySQL中权限设置中localhost与127.0.0.1也是分开设置的。当设置为127.0.0.1时,系统通过TCP/IP方式连接数据库;当设置为localhost时,系统通过socket方式连接数据库。
由于我配置的localhost默认是sock方式连接。所以有两种思路,要么修复sock方式,要么改用TCP/IP方式。
4、解决数据库连接问题:
(1)改用TCP/IP方式连接MySQL,最简单:
原来填写的数据库主机名是localhost
把数据库主机名改成127.0.0.1就行了
其他都不用改,直接点提交,已经可以了。
(2)修复socket方式,修改php.ini来连接MySQL:
通过phpinfo()查看,发现mysqli模块和pdo_mysql模块下的默认socket路径不一致,应该是编译时写错或没配。
两个mysql.sock的路径不一致,导致mysql无法通信。于是打开php.ini,修改mysqli.default_socket、pdo_mysql.default_socket 的值为/application/mysql/data/mysql.sock:
pdo_mysql.default_socket=/application/mysql/data/mysql.sock
mysqli.default_socket=/application/mysql/data/mysql.sock
保存修改后重启php。再使用localhost连接就可以了。
原文地址:https://blog.51cto.com/10249069/2375071