警告:mysql_connect(): 无法通过套接字'/tmp/mysql.sock' (2) 连接到本地 MySQL 服务器

Posted

技术标签:

【中文标题】警告:mysql_connect(): 无法通过套接字\'/tmp/mysql.sock\' (2) 连接到本地 MySQL 服务器【英文标题】:Warning: mysql_connect(): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)警告:mysql_connect(): 无法通过套接字'/tmp/mysql.sock' (2) 连接到本地 MySQL 服务器 【发布时间】:2013-11-12 13:20:28 【问题描述】:

每个人。我是一名学生,对 php 非常缺乏经验。在您将此标记为不相关或重复或任何内容之前。请听我说,我需要连接到我的学校主机来测试我的代码,我已经使用 notepad++ 文本编辑器安装了 XAMPP、phpmyadmin 4.0.4.1、PHP5.4.19 和 FTP WinSCP 一个类似于 filezilla 的程序

已将所有文件上传到服务器端公共 html 并尝试在浏览器中运行该文件 通过使用:my_school_link/my_username/

我有这个错误

警告:mysql_connect(): 无法连接到本地 MySQL 服务器 /my_full_filepath..../connect.php 中的套接字'/tmp/mysql.sock' (2) 第 3 行,这是我的 connect.php 文件。

<?php

mysql_connect('host_name', 'user_name', 'password');

mysql_select_db('my_database_name');

?>

我找不到我的 /tmp/mysql.sock,* 我在 xampp 文件夹中有 tmp 文件夹,但在里面我找不到 mysql.sock*

我已经尝试了以下

查看几乎所有关于此问题的帖子(我不明白在说什么,我确实尝试了一些建议和答案) 已输入正确的主机名、用户名和密码 以管理员身份运行 检查mysql是否正在运行(Apache也是如此) 在 php.ini 中指定的 MySQL 套接字从未被编辑,因此它处于默认模式 找不到 mysql 配置文件、my.cnf 或 etc 文件夹

可能是什么问题?如果有人可以帮助我,请告诉我出了什么问题。

请提供分步指南。和文件扩展名,如果需要保存文件....

我可以添加任何其他内容来帮助任何人更好地理解我的问题吗? 如果是,请告诉我...这是我最后的选择,所以非常感谢您的帮助。

【问题讨论】:

MySQL 服务器是否正在运行? 您好朋友,请查看此链接以获得答案:- ***.com/questions/5376427/… 您使用的是an obsolete database API,应该使用modern replacement。 您说您已经检查了 MySQL 是否正在运行,但您提到了 XAMPP 和您使用 FTP 连接的服务器。您是否检查过 MySQL 与您请求文件的网络服务器运行在同一台机器上? Please, don't use mysql_* functions in new code。它们不再维护and are officially deprecated。看到red box?了解prepared statements,并使用PDO 或MySQLi - this article 将帮助您决定哪个。如果你选择 PDO,here is a good tutorial. 【参考方案1】:

警告:mysql_connect(): 无法通过连接本地 MySQL 服务器 /my_full_filepath..../connect.php 中的套接字'/tmp/mysql.sock' (2) 第 3 行,这是我的 connect.php 文件。

当您的 mysql 服务器未运行时会出现此错误。如果您在共享主机上,则意味着您的提供商暂时停止了 mysql 服务器(需要解决一些黑客问题,或进行更新等)

如果你在 WAMP 或本地机器上,你应该检查你的 /etc/my.cnf 文件,它包含如下内容:

# The MySQL server
[mysqld]
port            = 3306
socket          = /tmp/mysql.sock

另一个原因可能是您在连接时使用了错误的主机名。

不要使用 mysql_connect 它已被弃用,而应使用 MySqli

【讨论】:

以上是关于警告:mysql_connect(): 无法通过套接字'/tmp/mysql.sock' (2) 连接到本地 MySQL 服务器的主要内容,如果未能解决你的问题,请参考以下文章

警告:mysql_connect():读取问候包时出错

cakephp: 警告 (2): mysql_connect()

警告:mysql_connect():用户'root'@'localhost'的访问被拒绝(使用密码:NO)[重复]

警告:mysql_connect(): php_network_getaddresses: getaddrinfo failed: No such host is known

解决Warning: mysql_connect(): Headers and client library minor version mismatch. 警告

MySQLi 连接无法建立,正常的 MySQL 功能工作吗?