Mysql8 忘记密码重置,以及问题解决

1.使用免密登录

找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf

在里最后加入

bash 复制代码
skip-grant-tables

重启MySQL服务

bash 复制代码
service mysql restart

Shutting down MySQL... SUCCESS!

Starting MySQL... SUCCESS!

重启成功

2.登录开始重置密码

直接回车登录,两次回车直接免密登录

bash 复制代码
mysql -uroot -p

由于使用的是mysql8所以要进行刷新权限

bash 复制代码
user mysql;
flush privileges;

使用命令重置密码

bash 复制代码
ALTER USER 'root'@'%' IDENTIFIED BY '这里填写你的密码';

如果报错

bash 复制代码
ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'%'

可能是你的用户没有root或这写的%不对

使用命令查看用户有哪些

bash 复制代码
select user,host from user;
我得到,说明我的没有root用户所以我不能使用这个去重置root用户密码
+------------------+-----------+
| user             | host      |
+------------------+-----------+
| my               | %         |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| my               | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)
大部分人的是,如果有百分号就可以去重置百分号的,没有百分号去重置localhost的
例如:ALTER USER 'root'@'localhost' IDENTIFIED BY '这里填写你的密码';
+------------------+-----------+
| user             | host      |
+------------------+-----------+
| root             | %         |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+

我的不是root用户,所以我的重置是这样写的
ALTER USER 'my'@'localhost' IDENTIFIED BY '密码';
重置成功:Query OK, 0 rows affected (0.01 sec)
exit
退出

回到1中删除

bash 复制代码
skip-grant-tables

重启MySQL服务

bash 复制代码
service mysql restart

Shutting down MySQL... SUCCESS!

Starting MySQL... SUCCESS!

重启成功

这样重置成功了,

我没有root用户,我想要root用户该怎么办呢?

下面方法:

登录进入MySQL

bash 复制代码
use mysql
#查看一些有哪些用户
select user,host from user; 
#刷新权限
flush privileges;
#创建root用户
create user 'root'@'localhost' identified by '密码';
#开通权限
grant all privileges on *.* to 'root'@'localhost' WiTh Grant option;
#刷新权限
flush privileges;
这样就ok了,但是这里还没有开通远程
使用这个命令开通运程ok结束
UPDATE user SET host = '%' WHERE user = 'root';
相关推荐
佛系打工仔2 小时前
绘制K线第二章:背景网格绘制
android·前端·架构
计算机毕设VX:Fegn08953 小时前
计算机毕业设计|基于springboot + vue医院设备管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
Mr__Miss3 小时前
保持redis和数据库一致性(双写一致性)
数据库·redis·spring
Knight_AL4 小时前
Spring 事务传播行为 + 事务失效原因 + 传播行为为什么不用其他模式
数据库·sql·spring
倔强的石头_5 小时前
时序数据时代的“存储与分析困局”解析及金仓解决方案
数据库
计算机毕设VX:Fegn08955 小时前
计算机毕业设计|基于springboot + vue小型房屋租赁系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
my_power5205 小时前
车载安卓面试题汇总
android
csj505 小时前
安卓基础之《(15)—内容提供者(1)在应用之间共享数据》
android
倔强的石头_6 小时前
场景化落地指南——金仓时序数据库在关键行业的应用实践
数据库
yeziyfx6 小时前
kotlin中 ?:的用法
android·开发语言·kotlin