忘记 mysql root 密码的解决方法:通过 mysqld_safe 选项停止和启动 mysql 服务,在启动时添加 skip-grant-tables 选项,连接服务器后重置 root 密码。停止 mysql 服务,编辑配置文件添加 init-file 选项,在 /var/lib/mysql/ 目录中创建 init_root_password.sql 文件,包含重置 root 密码的命令,然后启动 mysql 服务即可。停止 mysql 服务,以 root 用户启动 mysql,在 mys
忘记 MySQL root 密码怎么办?
恢复密码的方法:
方法 1:使用 mysqld_safe 选项
- 停止 MySQL 服务:sudo systemctl stop mysql
- 启动 MySQL 服务,同时设定 skip-grant-tables 选项:sudo mysqld_safe --skip-grant-tables &
- 连接到 MySQL 服务器:mysql -u root
- 重置 root 密码:ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
- 刷新权限表:FLUSH PRIVILEGES;
- 退出 MySQL:exit
- 重启 MySQL 服务:sudo systemctl restart mysql
方法 2:使用重置文件
- 停止 MySQL 服务:sudo systemctl stop mysql
- 找到并编辑 MySQL 配置文件(通常位于 /etc/mysql/mysql.cnf):
-
在 [mysqld] 段落中,添加以下行:
init-file=/var/lib/mysql/init_root_password.sql
- 保存配置并退出文本编辑器。
- 在 /var/lib/mysql/ 目录中创建一个名为 init_root_password.sql 的文件。
-
在 init_root_password.sql 文件中,输入以下内容:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
- 保存 init_root_password.sql 文件。
- 启动 MySQL 服务:sudo systemctl start mysql
方法 3:使用低级修复工具
- 停止 MySQL 服务:sudo systemctl stop mysql
- 以 root 用户启动 MySQL:sudo mysqld --user=root --console
-
在 MySQL 控制台中输入以下命令:
mysql> UPDATE mysql.user SET Password=PASSWORD('新密码') WHERE User='root'; mysql> FLUSH PRIVILEGES; mysql> quit
- 退出 MySQL 控制台。
- 重启 MySQL 服务:sudo systemctl start mysql
以上就是mysql忘记root密码怎么办的详细内容,更多请关注CTO智库其它相关文章!