当我尝试连接mysql时,我得到以下错误:
无法通过套接字/var/lib/ MySQL / MySQL连接到本地MySQL服务器。袜子”(2)
有解决这个错误的方法吗?背后的原因可能是什么?
当我尝试连接mysql时,我得到以下错误:
无法通过套接字/var/lib/ MySQL / MySQL连接到本地MySQL服务器。袜子”(2)
有解决这个错误的方法吗?背后的原因可能是什么?
当前回答
MariaDB是MySQL的一个社区开发的分支,在许多发行版中已经成为MySQL的默认实现。
首先你应该开始,
$ sudo systemctl start mariadb
如果失败了,不如试试,
$ sudo systemctl start mysqld
然后启动mysql,
$ mysql -u root -p
到今天为止,在Fedora中,这个包被命名为mariadb 在Ubuntu中叫做mariadb-server。
因此,如果您的系统中还没有安装它,您可能必须安装它。
其他回答
确保在/var中有足够的空间。如果Mysql恶魔不能写入额外的信息到驱动器,Mysql服务器将不会启动,这将导致错误无法连接到本地Mysql服务器通过套接字'/var/lib/ Mysql / Mysql。袜子”(2)
考虑使用
expire_logs_days = 10
max_binlog_size = 100M
这将帮助您降低磁盘使用率。
首先输入“service mysqld start”并登录
遇到同样的问题——下面是我的解决方法。
假设mysqld正在运行,那么问题可能只是mysql客户端不知道在哪里寻找套接字文件。
解决这个问题最直接的方法是在用户的配置文件.my.cnf文件中添加以下一行(在linux上通常在/home/myusername下):
socket=<path to the mysql socket file>
如果你没有.my.cnf文件,那么创建一个包含以下内容的文件:
[mysql]
socket=<path to the mysql socket file>
在我的例子中,由于我将mysql默认数据文件夹(/var/lib/mysql)移动到不同的位置(/data/mysql),我添加到.my.cnf如下:
[mysql]
socket=/data/mysql/mysql.sock
希望这能有所帮助。
MariaDB是MySQL的一个社区开发的分支,在许多发行版中已经成为MySQL的默认实现。
首先你应该开始,
$ sudo systemctl start mariadb
如果失败了,不如试试,
$ sudo systemctl start mysqld
然后启动mysql,
$ mysql -u root -p
到今天为止,在Fedora中,这个包被命名为mariadb 在Ubuntu中叫做mariadb-server。
因此,如果您的系统中还没有安装它,您可能必须安装它。
确保您的mysql服务正在运行
service mysqld start
然后,试试下面的方法:
(如果你没有设置mysql密码)
mysql -u root
如果您已经设置了密码
mysql -u root -p