我在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,卸载它或重新安装它。
当前回答
在我的例子中,默认端口3306正在被其他进程使用,因此它没有启动。在我停止了其他服务,并做了sudo服务mysql启动后,它工作得很好。顺便说一句,您可以使用sudo lsof -Pn -iTCP:3306之类的东西来查看谁可能正在使用该端口。
其他回答
如果您的安装是最近的,您应该确认您的安装是否是安装服务器…mysql -服务器- 5.5 . .可能你只安装了“mysql”..这只是客户端而不是服务器。
一个建议:总是问MySQL问题是什么。在我的例子中,减少/var/log/mysql/error.log,看到这个:
2015-07-28 12:01:48 23224 [ERROR] /usr/sbin/mysqld: unknown variable 'log_slow_queries=/var/log/mysql/mysql-slow.log'
2015-07-28 12:01:48 23224 [ERROR] Aborting
它在抱怨,因为我在my.cnf中未注释此选项,但在注释此选项后,它启动时没有任何问题。
以我为例,我做了一些研发工作:
我能够连接到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)
我也有同样的问题。我找了半天也没找到答案。
最后我检查了/tmp目录,权限是755。我将其权限更改为777,mysqld启动良好,没有任何问题。
将/opt/lampp/etc/my.cnf文件复制到/etc/mysql/my.cnf
在终端类型中:
mysql -u root
你会得到mysql>提示:
mysql> Update mysql.user set Password=PASSWORD('your_password') where user='root';
mysql> FLUSH PRIVILEGES;