我使用的是Linux,最近我将MySQL从5.7降到了5.6(由于它的严格性而导致了一些问题)。现在,当我使用commandmysql
时,我得到错误:
错误2002(HY000):无法通过套接字'/var/run/mysqld/mysqld.sock'(2)连接到本地MySQL服务器
我已经检查了好几个帖子,而且systemctl mysql start
似乎有效。但每次重新启动系统时,我都必须再次使用systemctl mysql start
来启动MySQL。
而且,service start mysql
也不起作用。
没有/etc/my.cnf文件,只有/etc/mysql/my.cnf文件。我在用Ubuntu 16.04。
如何配置它以便MySQL服务在启动时启动?
编辑:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
这篇文章也帮不上忙。
最佳答案
基本上,如果mysql
命令在没有主机的情况下运行,它会在本地计算机上查找套接字文件(这允许它直接连接到正在运行的进程)。你有两个解决办法。一个是在连接命令中包含主机,另一个是修改mysql
以包含:
[mysqld]
socket=/var/run/mysqld/mysqld.sock
[client]
socket=/var/run/mysqld/mysqld.sock
see here for more.