Mysql的mysql.sock文件找不到

Why does it happend?

当出现 Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 这个错误的时候,
意思很明确,要不就是文件不存在,要不就是mysql服务器没启动。

  1. 应该首先想到的是 Mysql服务器没启动,为什么?因为这样我们重启就好了。
  2. 接下来的就是确定文件 /tmp/mysql.sock 不存在。
  3. my.cfg 配置里面设置的路径不对(这个就是个人修改的问题了,修回来就好了)。

How to fix it?

面对第一种问题

1
$ sudo /usr/local/mysql/support-files/mysql.server start

就解决了

第二种问题,我们还是按照第一个解决方法去重启,如果出错

1
ERROR! The server quit without updating PID file

有点小麻烦

1
2
3
4
5
6
7
8
9
10
# 首先查一查进程
$ ps aux | grep "mysql"
wyq 23105 0.3 0.0 2423356 196 s002 R+ 6:20PM 0:00.00 grep --color=auto mysql
_mysql 23063 0.0 0.2 3574676 14804 s000 S 5:58PM 0:00.86 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/promote.cache-dns.local.err --pid-file=/usr/local/mysql/data/promote.cache-dns.local.pid
root 22947 0.0 0.0 2448728 904 s000 S 5:58PM 0:00.02 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/promote.cache-dns.local.pid

# 说明还有一些进程没有杀死
$ sudo kill -9 23105

# 然后重启吧

第三种呢,把配置文件修改成对应的路径就好了

好了,这样可以解决那个问题了

What is more?

最大的问题是目前我就遇到这样的问题,也需要还有别的问题出现这样的状况