mysql忘记root密码

2023-08-22  本文已影响0人  xlgao

一、mysql 5.x忘记root密码

1、停止mariadb服务

systemctl stop mariadb

2、修改配置文件 vim /etc/my.cnf
在[mysqld]下添加skip-grant-tables,意思是忽略密码, 保存并退出

3、启动Mariadb

systemctl start mariadb

4、修改密码

# mysql
use mysql;
UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ; 
flush privileges ; 
quit

5、改回配置,重启服务

vim /etc/my.cnf 删除skip-grant-tables
systemctl restart mariadb

6、进入数据库

# mysql -uroot -p
输入新密码new-password即可

二、mysql 8.x忘记root密码

1、在配置文件mysqld.cnf下添加 skip-grant-tables

vim /etc/mysql/mysql.conf.d/mysqld.cnf
skip-grant-tables

2、重启MySQL服务

service mysql restart

3、 修改MySQL密码

mysql -u root -p

4、选择管理user表的数据库

use mysql;
 
# 将authentication_string 置空
update user set authentication_string='' where user='root';
# 将plugin改为以前版本的密码认证方式
update user set plugin='mysql_native_password' where user='root';
 
# 刷新
FLUSH PRIVILEGES;
 
# 修改密码
alter user 'root'@'localhost' identified by 'newpassword';

5、 重启MySQL

systemctl restart mysqld 
上一篇下一篇

猜你喜欢

热点阅读