文章目录
当我们忘记了MySQL的密码时,该怎么样进入并重新设置密码呢?
1、停止mysql进程的运行
service mysqld stop
2、修改配置文件 /etc/my.cnf
vim /etc/my.cnf
skip-grant-tables 配置,保存
用了 skip-grant-tables 参数后,MySQL 将会跳过用户权限验证,直接启动数据库服务。这个选项的主要作用是绕过密码验证,允许无需密码访问数据库。
3、再次登录MySQL后,则可以免密登录
4、刷新权限
使用flush privilege刷新权限
flush privilege 命令的作用是重新加载授权表并使新的权限更改生效。在正常情况下,MySQL 会将用户权限存储在某个系统表中(如 mysql.user 表),并在用户登录或权限更改时加载和验证这些权限。但是,当使用 skip-grant-tables 参数绕过验证后,MySQL 将不再加载或验证这些权限,而是允许所有操作。
通过执行 FLUSH PRIVILEGES 命令,MySQL 会重新加载授权表,开始验证用户权限,并应用最新的权限更改。这样可以防止任何不受欢迎的更改被持续应用,并将数据库恢复为正常的安全状态。
5、修改密码
set password for ‘用户名’@‘地址’ = ‘新的密码’
6、删除配置文件中的免密登录
删除skip-grant-tables配置
7、重启MySQL
systemctl restart mysqld