环境:Linux wifi 2.6.32-29-generic #58-Ubuntu SMP Fri Feb 11 19:00:09 UTC 2011 i686 GNU/Linux

 

推测是配置文件所指的sock位置不对,正确的位置应该是'/var/run/mysqld/mysqld.sock'。

搜索得知配置写在my.cnf中,于是拷贝自带的'/etc/mysql/my.cnf.cgbk'到'/etc/mysql/my.cnf'和'/tmp/my.cnf',运行mysql登录命令,依然提示该错误。

虽然可以使用:

$ mysql -u root --socket=/var/run/mysqld/mysqld.sock

来指定sock,但是每次这么指定太过麻烦,网上搜索的配置文件的位置还是不对。

这个配置文件应该可以用mysqladmin来制定,所以查看它的help:

$ mysqladmin --help | grep cnf  

                      order of preference, my.cnf,$MYSQL_TCP_PORT,

/ etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf 

发现~/.my.cnf可能是默认的配置文件位置,拷贝一份正确的配置过去,OK。