mysqli_connect():(HY000/2002):Can';t通过套接字连接到本地MySQL服务器


mysqli_connect(): (HY000/2002): Can't connect to local MySQL server through socket

我急需帮助。。。我在尝试使用php:显示数据库时遇到了这个错误

mysqli_connect():(HY000/2002):无法连接到本地MySQL服务器通过中的套接字'/Applications/MAMP/tmp/mysql/mysql.sock'(2)/第7行的Applications/MAMP/htdocs/databases.php数据库连接失败:无法通过套接字连接到本地MySQL服务器'/Applications/MAMP/tmp/mysql/mysql.sock'(2)(2002)

我已经尝试修复它好几天了,在这个论坛上阅读了有同样问题的人的文章,并应用了修复程序(比如这个),但绝对没有运气。

以下是我尝试过的一些步骤:进入php.ini文件,将套接字更改为/tmp/mysql.sock(我还尝试将其更改为/Applications/MAMP/tmp/mysql/mysql.shock,看看会发生什么,但效果不佳)。

尝试对/etc/my.cnf文件执行相同操作。不好。

尝试了很多其他我都记不起来的事情。

此外,我使用的是Mac 10.10.2,并且我安装了MAMP。根据MAMP,只有Apache在工作(Apache开了绿灯,MySQL上没有),但我已经下载了MySQL,根据System Pref,它正在运行,尽管它不会因为某种原因让我停止MySQL服务器(当我单击停止时,它会停止,然后自行重新启动)。

请帮忙。。。

如果重要的话,这里是php:

<?php
  // 1. Create a database connection
  $dbhost = "localhost";
  $dbuser = "widget_cms";
  $dbpass = "*********";
  $dbname = "widget_corp";
  $connection = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
  // Test if connection succeeded
  if(mysqli_connect_errno()) {
    die("Database connection failed: " . 
         mysqli_connect_error() . 
         " (" . mysqli_connect_errno() . ")"
    );
  }
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
    <head>
        <title>Databases</title>
    </head>
    <body>
        
    </body>
</html>
<?php
  // 5. Close database connection
  mysqli_close($connection);
?>

刚刚找到解决方案!

我刚刚用127.0.0.1替换了localhost。

奇怪的是,我想我以前也试过。也许篡改配置并重试它现在就可以工作了。