重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
mysql-8.0.13 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
创新互联是一家集网站建设,兴文企业网站建设,兴文品牌网站建设,网站定制,兴文网站建设报价,网络营销,网络优化,兴文网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
一、修改root密码
mysql update mysql.user set authentication_string="123456" where user="root";
或:mysqlupdate mysql.user set authentication_string="123456" where user="root" and host='localhost';
#刷新权限(必须步骤)
mysql flush privileges;
#查询密码是否生效:
mysql select host,user,authentication_string from mysql.user;
mysql-8.0.13修改密码后mysqlquit 再次登录。
mysql - u root -p
password:123456
报错:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
找到一种解决方法:
1、cmd-1窗口:无密码启动mysql服务
mysqld --console --skip-grant-tables --shared-memory ;
#--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
2、无密码登录,再次修改密码。
再开一个CMD窗口(前一个CMD窗口已经不能动了),转到mysql\bin目录
mysql -u root -p
-密码不输入直接enter
#修改密码为空
mysql UPDATE mysql.user SET authentication_string='' WHERE user='root';
mysqlflush privileges;
myslqquit
#再次登录无密码登录
mysql - u root -p
Enter password:
#enter不输入密码进入mysql
------------------------------------------------------------------------------------
查询网上资料,可能是MySQL8.0的caching_sha2_password问题,再来试试
MySQL8.0采用了新的更安全的验证方式,原有修改密码方法修改密码后无法登录
mysqlupdate mysql.user set authentication_string="123456" where user="root" and host='localhost';
1、首先查询用户
mysql select host,user,plugin,authentication_string from mysql.user;
2、修改密码和密码方式
mysql ALTER user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
mysql flush privileges;
3、退出再次登录,成功。
或者也可以修改密码后再修改plugin
1、mysqlupdate mysql.user set authentication_string="123456" where user="root" and host='localhost';
2、mysql UPDATE mysql.user SET plugin='mysql_native_password' WHERE user='root';
具体步骤:windows-mysql无法登录,修改密码
1、首先关闭正在运行的MySQL服务。
2、打开CMD窗口,转到mysql\bin目录。
3.、输入 mysqld --console --skip-grant-tables --shared-memory ;。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
4、再开一个CMD窗口(前一个窗口已经不能动了),转到mysql\bin目录。
5. 输入mysql -u root -p回车,出现MySQL提示符 。
6. 进行修改密码:
ALTER user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
# plugin需要改成: mysql_native_password
7. 刷新权限(必须步骤):flush privileges; 。
8. 退出 quit。
9. 再次访问,使用用户名root和新密码123456登录。
#启动mysql服务 net start mysql
#停止mysql服务 net stop mysql
#登录mysql mysql -u root -p
#查询用户信息
mysql select host,user,plugin,authentication_string from mysql.user;
#修改密码:
mysql ALTER user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY it'123456';
#退出 mysqlquit
1、以管理员的身份打开cmd,然后跳过权限启动mysql,命令:xxx --skip-grant-tables 前面是mysql配置文件的位置,然后回车。
2、新打开个cmd窗口,进入到mysql配置文件目录bin下,然后输入 mysql -uroot -p 再回车,这步是以空密码进入mysql。
3、空密码进入mysql后,如果前面都设置正确的话,这步显示的界面是Welcome to the MariaDB monitor。
4、然后可以show database; 查看当前的数据库,回车后会列举出当前数据库的列表。
5、然后执行命令:update user set password=password('新密码') where user='root'; 并回车,其中括号中的就是将要设置的新密码。
6、执行完后会提示你 Query OK,表示执行成功了,再用新密码登录就可以了。
展开全部
1.关闭正在运行的MySQL。
2.打开DOS窗口,转到mysql\bin目录。
3.输入mysqld
--skip-grant-tables回车。如果没有出现提示信息,那就对了。
4.再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
5.输入mysql回车,如果成功,将出现MySQL提示符
6.
连接权限数据库use
mysql;
(是本来就有的提示符,别忘了最后的分号)
6.改密码:
update
user
set
password=password("520")
where
user="root";
(别忘了最后的分号)
7.刷新权限(必须的步骤)flush
privileges;
8.退出
\q