我在Ubuntu 12.04 LTS (Precise穿山甲)上安装了LAMP,然后在phpMyAdmin上设置根密码。我忘记密码了,现在无法登录。当我试图通过终端更改密码时,我得到:

错误2002 (HY000):无法通过套接字连接到本地MySQL服务器 ' / var /运行/ mysqld / mysqld。袜子”(2)

我该如何解决这个问题?我无法打开LAMP,卸载它或重新安装它。


当前回答

我现在遇到了这个问题,并且解决了它。

尽管您安装了mysql-server,但是需要运行守护进程才能使客户机连接到它。

首先检查mysql服务器是否正在运行:

netstat -tap | grep mysql

你应该会看到这样的东西:

$ sudo netstat -tap | grep mysql
tcp        0      0 localhost:mysql         *:*          LISTEN     6639/mysqld     

如果您没有运行服务器,请使用以下命令启动守护进程:

/etc/init.d/mysql restart

如果已经安装,这应该可以解决您的问题。

其他回答

我以前在Kubuntu 20.04中遇到过这个问题。我的解决办法就是跑:

sudo dpkg --configure -a

原因是dpkg崩溃了。

我以前也遇到过这个问题,我通过跑步解决了它:

sudo /etc/init.d/mysql start

我想服务停止了。

我用重启mysql解决了这个问题

/etc/init.d/mysql stop

and

/etc/init.d/mysql start

就是这样。

如果您的安装是最近的,您应该确认您的安装是否是安装服务器…mysql -服务器- 5.5 . .可能你只安装了“mysql”..这只是客户端而不是服务器。

我曾经遇到过这个问题,并通过安装mysql-server解决了它,所以请确保您已经安装了mysql-server,而不是mysql-client或其他东西。

这个错误意味着文件/var/run/mysqld/mysqld.Sock不存在,如果你没有安装mysql-server,那么这个文件就不存在。在这种情况下,安装它

sudo apt-get install mysql-server

但是如果mysql-server已经安装并且正在运行,那么您需要检查配置文件。

配置文件如下:

/etc/my.cnf
/etc/mysql/my.cnf
/var/lib/mysql/my.cnf

在/etc/my.cnf目录下,套接字文件配置可能是/tmp/mysql。在/etc/mysql/my.cnf中,套接字文件配置可能是/var/run/mysqld/mysqld.sock。因此,删除或重命名/etc/mysql/my.cnf,让mysql使用/etc/my.cnf,那么问题就可以解决了。

打开终端,输入:

sudo apt-get purge mysql-client-core-5.6

sudo apt-get autoremove

sudo apt-get autoclean

sudo apt-get install mysql-client-core-5.5

sudo apt-get install mysql-server  

MySQL数据库核心客户端和MySQL服务器包将是相同的5.5版本。MySQL Client 5.5和MySQL Server 5.5是Ubuntu 14.04中这些包的当前“最佳”版本,由包维护者决定。

如果你想安装MySQL Client 5.6和MySQL Server 5.6,你也可以在Ubuntu软件中心找到MySQL - Client -core-5.6和MySQL - Server -5.6包。重要的是客户端和服务器版本号在两种情况下都要匹配。

这对我很管用。