从 5.2.x 更新的 PHP 5.3.6 上出现 PDO 错误

发布于 2024-11-08 02:16:09 字数 295 浏览 1 评论 0原文

实际上我的服务器将 PHP 从 5.2.x 更新到了 5.3.6。在此之后-我所有的 mysql 连接都失败了。我发现这样的 PDO 错误 连接失败:SQLSTATE[HY000] [2002]没有这样的文件或目录 还检查了 pdo_mysql.default_socket 的 php.ini 文件值,即 /tmp/mysql.sock

主机服务告诉我修复我的 mysql DB 密码。但这没有帮助。 有人可以帮我解决这个问题吗?

Actualy my server updated PHP to 5.3.6 from 5.2.x. After this- all my mysql connections failed. I catch such PDO error
Connection failed: SQLSTATE[HY000] [2002] No such file or directory
Also checked in php.ini file value of the pdo_mysql.default_socket which is /tmp/mysql.sock

Host service told me to repair my mysql DB passwords. But it didn't help.
Can somebody help me with this issue?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

陪你搞怪i 2024-11-15 02:16:09

呵呵,很好的支持;)这与密码完全无关。 PDO_MySQL 在 Linux 下通过套接字与 mysql 服务器进行通信。首先找出插座现在在哪里。 (抱歉,但我不知道怎么做:X)

如果您有权访问 php.ini,请更改

pdo_mysql.default_socket = /path/to/mysql.sock

如果您无权访问它,请更改 pdo 对象的实例化,如 < a href="http://php.net/pdo-mysql.connection" rel="nofollow">PDO_MySQL 连接

$db = new PDO('mysql:unix_socket=/path/to/mysql.sock;dbname=testdb');

您可能必须在此处更改/添加一些设置。

hehe, nice support ;) This has absolutely nothing to do with the passwords. PDO_MySQL communicates under linux via sockets with the mysql-server. First of all find out, where is the socket now. (Sorry, but I dont know how :X)

If you have access to the php.ini, change

pdo_mysql.default_socket = /path/to/mysql.sock

If you dont have access to it, change the the instanciation of the pdo-object like described under PDO_MySQL Connection

$db = new PDO('mysql:unix_socket=/path/to/mysql.sock;dbname=testdb');

You probably must change/add some settings here.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文