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';
相关推荐
牧瀬クリスだ19 小时前
Redis String深度解析:从底层到五大实战场景
数据库·redis·缓存
传奇开心果编程19 小时前
组合优先开发范式:从汉字造字原理到声明式UI组件组合思想
android·flutter·ios·swiftui·移动开发·harmonyos·android jetpack
Random Glow20 小时前
聚簇索引:为什么主键顺序决定插入性能
数据库·mysql·性能优化·innodb·索引
软件技术NINI20 小时前
基于PHP和MySQL的快递代收点管理系统的设计与实现
开发语言·javascript·数据库·mysql·毕业设计·php·毕设
SelectDB技术团队20 小时前
ClickHouse SQL 好学吗?从 MySQL 迁移 Doris 的完整兼容验证
人工智能·sql·mysql·clickhouse·开源·apache doris·增量计算
吹什么轩20 小时前
MySQL 增删改查(CRUD)完全指南:从 INSERT 到 GROUP BY
数据库·mysql
腾讯端服务20 小时前
一码Duo端-Kuikly-iOS折叠屏新UI适配实践
android·ui·ios·kotlin·鸿蒙
T量子永生20 小时前
Android SISO 分布式编译集群配置方案
android·分布式·云计算·源代码管理
为思念酝酿的痛20 小时前
MySQL表的约束
数据库·mysql
时间售卖铺20 小时前
MySQL存储过程流程控制全解析
运维·数据库·mysql·云原生