升级到php7.2 wordpress出现的问题-Error establishing a database connection

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/c332030/article/details/88984566

升级到PHP7.2出现的一些问题及解决

Error establishing a database connection

  • 原因:
    通过这句话可以理解为是数据库连接出现了问题。
  • 是不是php与nginx版本的问题。
    • 新建一个测试页test.php 页面里面输入<?php phpinfo(); ?>
    • 成功显示没问题。
  • 是不是php连接到mysql的配置问题:
    • 创建一个连接到数据库的PHP文件test.php作为测试
<?php
//define('SQL_HOST','127.0.0.1');//数据库地址
define('SQL_HOST','localhost');//数据库地址
define("SQL_USER","wpUser");//数据库用户名
define("SQL_PASSWORD","18855442672ll");//数据库密码
define("SQL_DATABASE","wordpress");//连接的数据库名字
define("SQL_PORT","3306");//数据库端口号,默认为3306
//define("SQL_SOCKDET","");

$mysql = mysqli_connect(SQL_HOST,SQL_USER,SQL_PASSWORD,SQL_DATABASE,SQL_PORT) or  die(mysqli_error());
//连接不上切换数据库
//mysqli_select_db(SQLDATABASE);
//查询语句
$sql = "select* from wp_statistics_visitor";
//查询
$results = $mysql -> query($sql);

print_r($results);
//遍历循环打印数据
while ($row = mysqli_fetch_array($results))
{
//    print_r($row);
    echo $row['agent'];
    echo "<br>";
}
//释放
mysqli_free_result($results);
//关闭连接
mysqli_close($mysql);
?>
  • 测试结果出错mysqli_connect(): (HY000/2002): No such file or directory
  • 根据出错信息找到一篇博文点击查看
    • 是host要写成127.0.0.1不能写成localhost。原因详见博文。
    • 因而将wordpress配置文件wp-config.php里的localhost改为127.0.0.1
    • 此时出现另一问题
      > Uncaught Error: Call to undefined function ereg_replace() in /var/www/wordpress/wp-content/themes/yusi1.0/header.php:60 Stack trace:
    • 不过上面这个是属于主题的问题,解决方法详见下一篇博文
  • 解决
    方法1. 将wp-config.php内的localhost改成127.0.0.1
    方法2. 创建缺失的那个文件
    • 查找mysql.sock的路径find / -name mysql.sock
    • 创建软链接 ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
    • 上面的第一个是博主实际的mysql.sock的路径,第二个是使用localhost时自动去查找的文件。

参考资料:https://www.jianshu.com/p/546c94e0bd95
参考资料:https://my.oschina.net/scgywx/blog/1545301
参考资料:https://kong1616.iteye.com/blog/682342

转载请注明:大魔王ISDevil's Blog » 升级到php7.2 wordpress出现的问题-Error establishing a database connection

喜欢 (0)

猜你喜欢

转载自blog.csdn.net/c332030/article/details/88984566