代码改变世界

MySQL搭建过程中的“/tmp/mysql.sock"错误解决

2009-10-05 00:54  Logic0  阅读(2226)  评论(0编辑  收藏  举报
我顶 字号:
       下载了mysql 5.0.70版本
       su之后,直接./configure + make install ,成功
       service mysql start

       进入管理的时候出现问题:
       logic0@logic0-desktop:~$ mysql
       ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

       老套路:google 错误信息,确定是/tmp/mysql.sock不存在
       解决办法:
       ps aux | grep mysql
       root      1896  0.0  0.0   1872   548 ?        S    16:00   0:00 /bin/sh /usr/bin/mysqld_safe
       mysql     1935  0.0  0.8 127852 17188 ?        Sl   16:00   0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --port=3306 --socket=/var/run/mysqld/mysqld.sock
       root      1936  0.0  0.0   3260   740 ?        S    16:00   0:00 logger -p daemon.err -t mysqld_safe -i -t mysqld
       logic0    2287  0.0  0.0   3560   804 pts/0    S+   16:24   0:00 grep mysql

       可以发现里边有这样的一条信息--socket=/var/run/mysqld/mysqld.sock
       直接建立链接:
       ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock
       然后service mysql stop
              service mysql start
              mysql -u root -p
       OK了
       至于原理,现在仍然不太明了。