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';
相关推荐
ltl14 分钟前
Disaggregated DB 合集:Socrates、PolarDB、Taurus 的共同模式
数据库
我就是妖怪2 小时前
KMP全栈开发:从Android到AI Agent的技术演进与实践
android·人工智能
Blossom i2 小时前
大数据预处理与采集实验一:使用Python操作MySQL数据库
数据库·mysql
InfinitePlus3 小时前
Docker MySQL搭建一主一从
mysql·docker
smilejingwei3 小时前
CodeBuddy+SQLazy 编写复杂 SQL 详解
sql·codebuddy·sqlazy
心平气和量大福大3 小时前
android-实例-蒲公英-更新与安装-5-签名与生成APK
android·java·开发语言
雾时之林3 小时前
Linux--软件管理、源码包安装
linux·服务器·数据库
阿pin5 小时前
Android随笔-Serializable与Parcelable
android·serializable·parcelable
老纪的技术唠嗑局5 小时前
超级干货分享:中小企业使用 OceanBase 实践经验汇总
数据库
天空之城--5 小时前
Android 事件分发机制深度解析——原理、源码与实战综合总结
android