mysqli_connect():( HY000 / 2002):无法通过套接字连接到本地MySQL服务器

时间:2015-03-04 21:43:28

标签: php mysql apache sockets

我需要帮助不好...我在尝试使用php显示数据库时遇到此错误:

  

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

我一直试图修复它好几天,从具有相同问题的人那里阅读这个论坛,然后应用修复程序(比如这个http://tinyurl.com/q4cpxzj)绝对没有运气。

这里有一些我尝试的步骤:进入php.ini文件并将套接字更改为/tmp/mysql.sock(我也尝试将其更改为/ Applications / MAMP / tmp / mysql / mysql.sock看看会发生什么,没有好处。)

尝试对/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);
?>

1 个答案:

答案 0 :(得分:2)

刚刚找到解决方案!

我刚用127.0.0.1替换了localhost。

奇怪的是,我想我之前已经尝试过了。也许乱搞配置并重试它让它现在正常工作。