我在Ubuntu 12.04 LTS (Precise穿山甲)上安装了LAMP,然后在phpMyAdmin上设置根密码。我忘记密码了,现在无法登录。当我试图通过终端更改密码时,我得到:
错误2002 (HY000):无法通过套接字连接到本地MySQL服务器 ' / var /运行/ mysqld / mysqld。袜子”(2)
我该如何解决这个问题?我无法打开LAMP,卸载它或重新安装它。
我在Ubuntu 12.04 LTS (Precise穿山甲)上安装了LAMP,然后在phpMyAdmin上设置根密码。我忘记密码了,现在无法登录。当我试图通过终端更改密码时,我得到:
错误2002 (HY000):无法通过套接字连接到本地MySQL服务器 ' / var /运行/ mysqld / mysqld。袜子”(2)
我该如何解决这个问题?我无法打开LAMP,卸载它或重新安装它。
当前回答
当我停止mysql服务时,我得到了完全相同的错误,这里如何解决它:通过(重新)启动mysql使用这些命令:
sudo systemctl start mysql
or
sudo systemctl restart mysql
其他回答
如果您的安装是最近的,您应该确认您的安装是否是安装服务器…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,那么问题就可以解决了。
我也有这个问题,但这些答案都帮不了我。问题是不同的,但错误是由OP描述的。
我检查了MySQL的日志在/var/log/mysql,我看到了这个:
150309 5:03:19 [ERROR] /usr/sbin/mysqld: unknown variable 'lower_case_tables_names=1'
我打开/etc/mysql/my.cnf文件并注释掉#这一行。在此之后,我能够连接到数据库。
说实话,我不知道问题出在哪里。由于维护,linode服务器计划重新启动,这个错误突然出现。
以我为例,我做了一些研发工作:
我能够连接到MySQL使用
root-debian#mysql -h 127.0.0.1 -u root -p
但是在mysql中-u root -p行不通。
我在my.cnf中没有找到任何绑定地址。所以我注释了参数socket=/var/lib/mysql/mysqld。袜子在我的。cnf导致我登录的问题。
重新启动服务后,一切正常:
root@debian:~# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.6.19 MySQL Community Server (GPL)
在我的情况下,它是磁盘已满,mysqld不能再启动。
尝试重新启动mysql服务。
> service mysql restart
or
> service mysql stop
> service mysql start
如果它不识别停止命令,那么它肯定是磁盘空间。您应该在mysql分区中分配一些空间或使磁盘更大。
检查磁盘空间
> df -h