MySQL出现ERROR 2002 (HY000): Can’t connect to local MySQL server

不幸遇到MySQL出现ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’错误导致无法启动。
    解决方法: 修改/etc/my.conf:

[php]  view plain  copy
  1. [client]  
  2. socket=/var/lib/mysql/mysql.sock  
  3. [mysqld]  
  4. socket=/var/lib/mysql/mysql.sock  
 
    这样mysqld 及mysql就都可以搞定启动起来。
    不过问题也就来了, PHP程序链接 数据库的时候同样还是会出现这个问题,因为这还需要修改/etc/php.ini的php配置文件中的mysql.default_socket的值,其默认的时候是为空的,将其修改设置为:

[php]  view plain  copy
  1. mysql.default_socket=/var/lib/mysql/mysql.sock  

     但是有时这样并未能搞定php链接数据库的出现的Can’t connect to local MySQL server through socket '/tmp/mysql.sock’ (2) 的问题,因为php程序很BT的貌似非得找链接/tmp/mysql.sock而这个文件是不存在的,好吧,那就给他做个链接操作不就得了

[c-sharp]  view plain  copy
  1. ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock  

     这样php程序页面就可以链接到数据库了。

你可能感兴趣的:(Linux)