赞
踩
第一步:停掉mysql服务,可以使用win+r然后输入services.msc然后找到mysql的服务,将之关闭
第二步:win10前的系统,用系统管理员身份打开格式命令行,win10的请随意,然后输入
(8.0以前版本的请使用这个语句:mysqld --skip-grant-tables)
mysqld --console --skip-grant-tables --shared-memory
第三步:再打开一个格式命令行,权限请参照第二步,然后输入
mysql -u 用户名 -p
然后点击两下回车,发现进入mysql数据库
第四步:进入后选择一下名为mysql的数据库
use mysql;
第六步:刷新一下权限
flush privileges;
第七步:修改密码
(如果直接执行一下语句修改失败,请先执行这条语句:update user set authentication_string='' where user='root')
ALTER user '需要修改密码的用户名'@'localhost' IDENTIFIED BY '重置的密码'
第七步(8.0之前的版本):
MySQL 8.0前的版本,直接执行:SET PASSWORD=PASSWORD('[新密码]') where user = '你的用户名'
使用Navicat Premium 连接MySQL时出现如下错误:
mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password
解决
更改加密规则:
mysql -u root -p #登录
use mysql; #选择数据库
# 远程连接请将'localhost'换成'%'
ALTER USER 'root用户'@'localhost' IDENTIFIED BY '当前密码' PASSWORD EXPIRE NEVER; #更改加密方式
ALTER USER 'root用户'@'localhost' IDENTIFIED WITH mysql_native_password BY '当前密码'; #更新用户密码
FLUSH PRIVILEGES; #刷新权限
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。