当我尝试连接mysql时,我得到以下错误:
无法通过套接字/var/lib/ MySQL / MySQL连接到本地MySQL服务器。袜子”(2)
有解决这个错误的方法吗?背后的原因可能是什么?
当我尝试连接mysql时,我得到以下错误:
无法通过套接字/var/lib/ MySQL / MySQL连接到本地MySQL服务器。袜子”(2)
有解决这个错误的方法吗?背后的原因可能是什么?
当前回答
Navicat15:无法通过套接字/var/lib/ MySQL / MySQL .sock连接到本地MySQL服务器
Ubuntu16.04版本,如果mysql服务器正在运行,在/etc/mysql中配置如下:
[mysqld] socket = /var/run/mysqld/mysqld.sock
那么Navicat15 localhost的默认设置是: " / var / lib / mysql / mysql.sock”
你可以像这样提前编辑:
其他回答
MySQL服务器没有运行,或者那不是它的套接字文件的位置(检查my.cnf)。
它告诉你找不到/var/lib/mysql/mysql。sock的套接字文件
你要做的就是连接mysql。Sock文件可能在/tmp/mysql目录下。如果文件不存在,使用Sock创建它
touch /tmp/mysql.sock
然后执行
Sudo ln -s /tmp/mysql。袜子/var/lib/mysql/mysql.sock
注意,如果/var/lib中没有mysql目录,请创建它
mkdir mysql
刷新应用
检查你的mysqld服务是否正在运行,如果没有,启动服务。
如果您的问题没有解决,请查找/etc/my.cnf并按以下方式进行修改,在这里您将看到以socket开头的一行。在进行此更新之前对该文件进行备份。
socket=/var/lib/mysql/mysql.sock
改变
socket=/opt/lampp/var/mysql/mysql.sock -u root
在我的情况下,我导入了一个新的数据库,在那之后我无法再次连接。最后我意识到这是一个空间问题。
你可以删除最后一个数据库,然后扩展硬盘或者像我做的那样,恢复虚拟机的快照。
以防有人觉得这有用
以下是对我有效的方法:
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
service mysqld restart