CentOS MySQL8 忘记密码

             

1.修改 MySQL 的登录设置:
# vi /etc/my.cnf
在 [mysqld] 的段中加上一句:skip-grant-tables
例如:

[mysqld] 
datadir=/var/lib/mysql 
socket=/var/lib/mysql/mysql.sock 
skip-grant-tables

保存并且退出 vi。
3.重新启动 mysqld

# /etc/init.d/mysqld restart

4.登录并修改 MySQL 的 root 密码

# /usr/bin/mysql
USE mysql; 
# 输入flush privileges,否则会出现 ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql> alter user root@'localhost' identified by '******';

# 如果出现下面错误,这是密码复杂度问题
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 
# 查看密码复杂度要求
mysql> show variables like '%pass%';
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

5.将 MySQL 的登录设置修改回来
# vi /etc/my.cnf
将刚才在 [mysqld] 的段中加上的 skip-grant-tables 删除
保存
6.重新启动 mysqld

# /etc/init.d/mysqld restart




发表评论 请登录再评论
  •   文章分类
回到顶部