mysqladmin -u root -p password 设置初始密码,出现"error: 'Access denied for user 'root'@'localhost' (using password: YES)'"
这个错误提示表明你的 MySQL 用户名或密码不正确,因此无法进行密码更改操作。请确保你使用的用户名是正确的,并且已经设置了密码。
如果你忘记了密码,可以尝试使用以下步骤进行重置:
sudo service mysql stop
sudo mysqld_safe --skip-grant-tables &
mysql -u root
UPDATE mysql.user SET authentication_string=PASSWORD('你的新密码') WHERE User='root';
FLUSH PRIVILEGES;
exit;
sudo service mysql stop
sudo service mysql start
mysql -u root -p
输入你的新密码即可登录 MySQL。
这个错误信息表示,您无法使用root用户的密码来登录MySQL服务器。可能是由于以下原因:
您输入的用户名或密码不正确。请确认您输入的用户名和密码是否正确。
您好,这个错误提示表示你连接Mysql时输入的用户名或者密码错误,查看Mysql原始密码可以通过命令
# 获取MySQL的root用户原始密码
grep 'temporary password' /var/log/mysqld.log
假如查询命令执行后返回[Note] A temporary password is generated for root@localhost: 123fegrs 密码就是 123fegrs
个错误提示表示您使用的用户名或密码不正确,因此无法执行该命令。请确认您输入的是正确的MySQL root用户和对应的密码。如果您忘记了密码,可以尝试重置MySQL的root用户密码。具体步骤如下:
停止MySQL服务 sudo service mysql stop
在跳过授权表的情况下启动MySQL服务 sudo mysqld_safe --skip-grant-tables &
登录MySQL mysql -u root
切换到MySQL数据库 use mysql;
更新root用户密码 update user set authentication_string=password('新密码') where user='root';
刷新MySQL权限表 flush privileges;
退出MySQL quit;
停止MySQL服务 sudo service mysql stop
启动MySQL服务 sudo service mysql start
现在您应该可以使用新密码登录MySQL了。
1 这个错误提示表明mysqladmin无法使用提供的用户名和密码连接到MySQL数据库。有几个可能的原因:
您提供的用户名或密码不正确。请检查您的用户名和密码是否正确,特别是在使用密码时要注意大小写。
MySQL数据库未启动或无法连接。请确保MySQL数据库已经启动,并且可以通过提供的主机名、端口号和用户名连接到MySQL数据库。
您的MySQL账户没有足够的权限。请确保您的MySQL账户被授予了足够的权限来更改密码。例如,您可以使用以下命令为root用户授予更改密码的权限:
sql_more Copy GRANT ALTER, UPDATE ON . TO 'root'@'localhost' IDENTIFIED BY 'password'; 其中,'password'是您要设置的新密码。
您的MySQL数据库使用了加密连接。如果您的MySQL数据库使用了加密连接(比如SSL连接),则需要使用相应的参数来连接到MySQL数据库。例如,您可以使用以下命令来连接到使用SSL连接的MySQL数据库: Copy mysqladmin --ssl --ssl-ca=ca.pem --ssl-cert=client-cert.pem --ssl-key=client-key.pem -u root -p password 其中,--ssl参数表示使用SSL连接,--ssl-ca、--ssl-cert和--ssl-key参数分别指定SSL证书和密钥的位置。
楼主你好,如果在使用mysqladmin命令重置MySQL root用户的密码时遇到“Access denied for user 'root'@'localhost' (using password: YES)”错误,可能有以下几个原因:
您输入的MySQL root用户密码不正确。请确保您输入的密码与MySQL root用户的密码匹配。
MySQL root用户没有在本地主机(localhost)上授予访问权限。在默认情况下,MySQL root用户只允许在本地主机上访问。如果您想从远程主机访问MySQL root用户,需要在MySQL服务器上进行相应的配置。
您的MySQL服务器可能已经启用了密码策略,并且要求密码必须符合特定规则。在这种情况下,请确保您的新密码符合MySQL密码策略的要求。
对于第一种情况,您可以尝试重新输入MySQL root用户的密码,并确保它与之前设置的密码匹配。如果您忘记了MySQL root用户的密码,您可以使用以下命令来重置密码:
awk Copy sudo systemctl stop mysql sudo mysqld_safe --skip-grant-tables & mysql -u root FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; exit sudo systemctl start mysql 这个命令会停止MySQL服务器,然后启动一个新的MySQL进程,跳过授权表的验证。接下来,您可以使用ALTER USER语句来修改MySQL root用户的密码。请确保在修改密码后重新启动MySQL服务器。
对于第二种情况,请确保您在本地主机(localhost)上运行mysqladmin命令。如果您想从远程主机访问MySQL root用户,请在MySQL服务器上进行相应的配置。
对于第三种情况,请确保您的新密码符合MySQL密码策略的要求。您可以使用以下命令来查看MySQL密码策略:
Copy SHOW VARIABLES LIKE 'validate_password%'; 如果您想修改MySQL密码策略,请参考MySQL官方文档进行相应的配置。
出现"error: 'Access denied for user 'root'@'localhost' (using password: YES)'"错误,可能是由于密码不正确导致的。请检查输入的密码是否正确,并确保在命令行中正确地使用了mysqladmin命令。
如果密码确实不正确,可以尝试使用以下命令以跳过密码验证来重置密码:
sudo mysql -u root
use mysql;
update user set authentication_string=password('NEWPASSWORD') where user='root';
update user set plugin="mysql_native_password";
flush privileges;
quit;
注意替换NEWPASSWORD为您想要设置的新密码。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。