两个不同的php网站在同一个服务器上,连接同一个数据库(数据库和代码在一个服务器)。一个运行正常,另一个提示 《数据库服务器连接错误Can't connect to local MySQL server through socket '/path/to/socket' (2)》。这是为什么?

解决方案 »

  1.   

    用同一用户名、密码连接MYSQL?
      

  2.   

    linux 下,连接本机 localhost 时会使用 socket 连接,这个 socket 的位置会在 my.cnf/ini 里配置,一般全路径为 /tmp/mysql.sock,php 不熟悉,你看看 php 的哪里可以配置这个内容的,你配置上去即可。另外你如果使用 127.0.0.1 代替 localhost 或使用外网 IP 来连接本机的数据库则不需要通过 socket 连接,这时候也就不会出现这样错误了。你对比两个程序的连接信息,是否完全一样?会不会一个用 localhost 一个用的是 IP?
      

  3.   

    回复四楼。两个程序的连接信息是完全一样的。
    我把链接不上的文件中的localhost 改成127.0.0.1 出现以下错误。
    数据库服务器连接错误Lost connection to MySQL server at 'reading initial communication packet', system error: 111