当我尝试连接mysql时,我得到以下错误:
无法通过套接字/var/lib/ MySQL / MySQL连接到本地MySQL服务器。袜子”(2)
有解决这个错误的方法吗?背后的原因可能是什么?
当我尝试连接mysql时,我得到以下错误:
无法通过套接字/var/lib/ MySQL / MySQL连接到本地MySQL服务器。袜子”(2)
有解决这个错误的方法吗?背后的原因可能是什么?
当前回答
我没有从上面所有的答案中找到任何解决方案,我确实有mariadb安装,从Debian 11的源代码安装(不是从Debian apt包)。所以每当我在终端中触发mysql命令时,我都会得到这个错误:
ERROR 2002 (HY000): Can't connect to local server through socket '/run/mysqld/mysqld.sock' (2)
和mysql错误日志只显示相同的错误套接字上面,这是我很难知道背后的原因
我所做的是删除我的发行版中有mariadb依赖文件的mailutils包。
因此,我只需要触发这两个命令
apt -y remove mailutils
apt -y autoremove
当我在终端运行mysql命令时,我再也没有socket错误了
其他回答
MariaDB是MySQL的一个社区开发的分支,在许多发行版中已经成为MySQL的默认实现。
首先你应该开始,
$ sudo systemctl start mariadb
如果失败了,不如试试,
$ sudo systemctl start mysqld
然后启动mysql,
$ mysql -u root -p
到今天为止,在Fedora中,这个包被命名为mariadb 在Ubuntu中叫做mariadb-server。
因此,如果您的系统中还没有安装它,您可能必须安装它。
如果你是在sf.net的壳,尝试:
mysql --host=mysql-{LETTER} --user={LETTER}{GROUP ID}admin -p
更改{LETTER}和{GROUP ID},如您的MySQL数据库的项目管理配置文件中所示。
如果磁盘空间快用完,这就是一个问题。 解决方案是从HDD中释放一些空间。
请阅读更多内容了解解释:
如果你在LINUX下运行MySQL,用命令disk free检查硬盘的空闲空间:
df
如果你得到这样的东西:
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 5162828 4902260 0 100% /
udev 156676 84 156592 1% /dev
/dev/sda3 3107124 70844 2878444 3% /home
这就是问题所在,现在你有解决方案了!
因为mysql。Sock想要创建在mysql文件夹,几乎总是在根文件夹下,不能实现,因为缺乏空间。
如果你周期性地在mysql目录下输入ls命令(在openSUSE 11.1是在/var/lib/mysql),你会得到这样的东西:
hostname:/var/lib/mysql #
.protected IT files ibdata1 mysqld.log systemtemp
.tmp NEWS greekDB mysql mysqld.pid test
ARXEIO TEMP1 ib_logfile0 mysql.sock polis
DATING deisi ib_logfile1 mysql_upgrade_info restore
mysql。Sock文件经常出现和消失(你必须尝试用ls分配一个mysql实例。文件夹上的袜子文件)。
这是由于磁盘空间不足造成的。
我希望我能帮助一些人!!!! 谢谢!
先尝试2、3种解决方案。如果您无法找到/var/lib/mysql/mysql.sock .sock,则仍然弹出错误提示
find /var/ -name mysql.sock
检查/var/中的可用空间
df
如果目录已满,请删除一些无用的文件/目录
rm /var/cache/*
也许你的问题现在可以解决了。
它告诉你找不到/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
刷新应用