MySQL 数据库 ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO)

我的数据库版本是 8.0.28

今天连接数据库的时候出现了这个错误

通过 mysql -u root -p 命令进入数据库 让输入密码,密码忘了就会提示这个

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

怎么办呢?重置密码吧!

  1. 首先关闭mysql服务 执行命令

net stop mysql
  1. 找到你的mysql 安装路径的bin 地址 可以直接win10中搜索服务找到,找到后双击服务里的mysql可以找到 bin 地址

  1. 以管理员权限打开命令行,跳转到安装路径下bin目录路径处 注意你们的路径地址别打错了

3.在命令行中输入命令跳过mysql的密码验证

./mysqld --console --skip-grant-tables --shared-memory

成功! 注意在这之前 必须执行关闭mysql的命令

4.用管理员权限再打开一个dos命令窗口,输入登陆指令 直接点击回车 什么都不要输入

mysql -u -root -p

5.使用sql命令跳转到mysql表中,并更改密码为123

注意命令2的分号

有人会输入命令2出现这个错误

The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

出现这个错误 执行下flush privileges; 命令 然后再运行命令2 就可以了

命令1:use mysql
命令2:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123';

6.设置完 输入flush privileges; 进行权限的刷新 注意命令分号

再输入exit 退出

打开新一个命令行使用net start mysql 启动 再输入mysql -u root -p就可以 正常使用密码123登录了

我是乔木 我的公众号:乔木真言

猜你喜欢

转载自blog.csdn.net/m0_64547949/article/details/129302594