Please check your file '/tmp/mysql.sock' and make it work well

解决方案 »

  1.   

    You can test that the socket works with this command: shell> mysqladmin --socket=/path/to/socket version
      

  2.   

    你是在同一台机器上运行MySQL Server和其客户端,这样这两个程序通讯时就需要一个socket文件,用它比用TCP/IP在本地通讯时更快。
    一般配置好MYSQL后,启动它时,会生产一个SOCKET文件,一般是在/tmp/mysql.sock,在MYSQL关闭后,MYSQL会自动删除它。在确认MYSQL正常运行时,可能有以下两种原因会产生上述错误:
    1。客户端和MYSQL认为的mysql.sock文件放的位置不统一。你要配置好你的my.cnf文件:
    [mysqld]
    socket=/path/to/mysql.sock
    user=mysql # 用户名
    [client]
    socket=/path/to/mysql.sockmysqld和client小节中socket设置应该相同,并且你要确认当前你登录的用户有权限读取my.cnf2. 看看有什么进程是定期清理临时目录的,比如cronjob,一旦被它清理目录,当然就不会再有mysql.sock文件了,自然出错,这时你应该把mysql.sock文件设置别的安全路径。
      

  3.   

    my.cnf在哪一个目录啊,我没有找到
      

  4.   

    检查文件:home/wxyandmnn/chart.php
    据我估计是你的配置文件config.php配置不对!虚拟主机一般提供的是linux系统,大家做php程序一般都是在windows系统下调试!所以有些目录设置或者属性设置需要修改,编程序的时候大家做好也都考虑到,既然人家提供的是虚拟主机,下面我列一下我的看法:
    1,虚拟主机根本不提供mysql服务,所以你根本连不上!虽然有些服务商打着支持的幌子,但是这些支持的意思是需要你再交1000元才开给你(比如该死的万网就曾这么办过,在紧下角非常不明显的声明着:“支持既需要交纳一定的费用才会开通的服务”,气死我了)
    2,你的设置文件有问题。
    3,上传的php文件让你上传的时候用二进制上传了(这种问题目前比较少)
      

  5.   

    我的问题是:
    ERROR 2002: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)