所以我尝试使用我的root密码(用户名:root密码:******)登录phpMyAdmin,但是,我继续收到错误:#2002无法登录MySQL服务器
我很确定我知道root密码,因为我在Mac OS X上输入了终端:
sudo /usr/local/mysql/support-files/mysql.server start
并且系统提示"Password:"
。我输入了密码,终端显示为:
Starting MySQL...SUCCESS!
因此服务器启动了。我不确定为什么相同的密码不适用于phpMyAdmin。
我尝试使用以下命令在终端设置密码:
/usr/local/mysql/bin/mysqladmin -u root password *******
但是我收到了输出:
/usr/local/mysql/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
我非常感谢帮助。我对此有所了解。我已经尝试了几个网站,而mySQL指令在这个问题上毫无用处。有关如何解决此问题的详细说明(在Mac OS X Lion上)将非常有用。谢谢。
更新
我一直在尝试重置root密码,并且一直遵循以下说明:http://www.coolestguyplanet.net/how-to-change-the-mysql-root-password/
但是,当我使用命令时:/ usr / local / mysql / bin / mysqld_safe --skip-grant-tables
我收到以下输出:
111217 10:00:42 mysqld_safe Logging to '/usr/local/mysql/data/******-********-MacBook-Pro.local.err'.
111217 10:00:42 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
/usr/local/mysql/bin/mysqld_safe: line 107: /usr/local/mysql/data/********-********-MacBook-Pro.local.err: Permission denied
/usr/local/mysql/bin/mysqld_safe: line 144: /usr/local/mysql/data/*******-**********-MacBook-Pro.local.err: Permission denied
111217 10:00:42 mysqld_safe mysqld from pid file /usr/local/mysql/data/*********-********-MacBook-Pro.local.pid ended
/usr/local/mysql/bin/mysqld_safe: line 107: /usr/local/mysql/data/*******-*********-MacBook-Pro.local.err: Permission denied
**********-*********-MacBook-Pro:~ myname$
为什么我的许可会被拒绝?
答案 0 :(得分:45)
在config.inc.php
将[{1}}更改为localhost
{/ 1}}。
答案 1 :(得分:10)
确保您的密码正确无误,如果您需要,可以使用此密码进行更改
/usr/local/mysql/bin/mysqladmin -u root -p password
当它要求输入密码时,请不要输入任何内容,只需按Enter即可。然后它会要求您输入新密码,然后确认。结束。
然后你还需要这样做。
sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
答案 2 :(得分:6)
phpMyAdmin/config.sample.inc.php
更改为phpMyAdmin/config.inc.php
; config.inc.php
中,将localhost
更改为127.0.0.1
; config.inc.php
中还有另一个phpMyAdmin/setup/frames/config.inc.php
,请忽略它。答案 3 :(得分:4)
嘿,我有这个问题,但我解决了这个问题。 我刚刚为mysql创建了一个新用户,然后你就可以登录到你的phpmyadmin。
做以下事情:
mysql -u root -p
然后输入您的密码:
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'enter your password just right here';
并为新用户设置所有权限。
GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost';
然后
FLUSH PRIVILEGES;
谢谢。
答案 4 :(得分:2)
当它显示(using password: NO)
时,表示它没有收到密码。
使用/usr/local/mysql/bin/mysqladmin -u root -p *******
答案 5 :(得分:2)
除了Sepp的回答之外,我还想指出,如果你已经将MySQL端口设置为另一个端口(即3307),你可以添加如下端口号:
$cfg['Servers'][$i]['host'] = '127.0.0.1:3307';
到config.inc.php
文件
我希望任何使用不同端口号的人都可以从我的回答中受益
答案 6 :(得分:1)
最好的方法是:
在Ubuntu Linux上设置/更改/重置MySQL root密码。在终端中输入以下行。
停止MySQL服务器。
sudo /etc/init.d/mysql stop
启动mysqld配置。
sudo mysqld --skip-grant-tables &
以root身份登录MySQL。
mysql -u root mysql
用新密码替换YOURNEWPASSWORD!
UPDATE user SET Password=PASSWORD('YOURNEWPASSWORD') WHERE User='root'; FLUSH PRIVILEGES; exit;
希望这有帮助的人..对我有用!!
答案 7 :(得分:0)
并检查这个mysql配置文件 -
[mysqld]
default_password_lifetime=0
https://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html