近期安全事件频发,想着端午前做一把安全,有个服务器php5用了好长时间了,升级到php7了,升级过程就不详细说了,网上教程满天飞,主要是升级完成后,打开wp,显示无法连接数据库,之前5没问题啊,当时就想到,5和7对于支持mysql的区别了,php5不希望使用mysql的库来支持mysql的连接,启用了mysqlnd来支持,听说比libmysql要快很多,所以编译php7的参数是:
–enable-mysqlnd
–with-mysqli=mysqlnd
–with-pdo-mysql=mysqlnd
那问题是不是在这里,看了一下phpinfo的页面,找到了问题所在
mysqlnd默认的pdo_mysql.default_socket 是/tmp/mysql.sock
可我的mysql.sock实际目录是在
/
var
/lib/mysql/mysql.sock
这么一个地方
解决方法是如果在安装php之前就安装了mysql,同时也知道mysql.sock在什么地方,那么用如下参数安装php
--with-mysql-sock=/
var
/lib/mysql/mysql.sock
如果不小心默认安装了,那么就需要在/tmp目录里加一个mysql.sock的软链接了。搞定。