忘记MySQL容器5.7的root密码,可以通过以下步骤进行重置:
- 停止MySQL容器:
docker stop mysql
- 进入MySQL容器:
docker exec -it mysql bash
- 修改配置文件,跳过权限表的加载:
echo "skip-grant-tables" >> /etc/mysql/conf.d/mysqld.cnf
- 重启MySQL服务:
service mysql restart
- 使用root用户登录MySQL:
mysql -uroot
- 重置root密码:
SET PASSWORD = PASSWORD('new_password');
- 退出MySQL:
exit
- 启动MySQL容器:
docker start mysql
重置后的root密码为new_password
。
以下是详细步骤说明:
1. 停止MySQL容器
停止MySQL容器后,才能进入容器进行操作。
2. 进入MySQL容器
使用docker exec -it mysql bash
命令进入MySQL容器。
3. 修改配置文件
修改配置文件,跳过权限表的加载,这样就可以绕过密码认证,直接登录MySQL。
4. 重启MySQL服务
重启MySQL服务后,配置文件的修改才能生效。
5. 使用root用户登录MySQL
使用mysql -uroot
命令登录MySQL,此时不需要输入密码。
6. 重置root密码
使用SET PASSWORD = PASSWORD('new_password');
命令重置root密码。
7. 退出MySQL
使用exit
命令退出MySQL。
8. 启动MySQL容器
启动MySQL容器后,使用新的root密码即可登录MySQL。
注意事项
- 重置root密码后,请及时修改配置文件,将
skip-grant-tables
删除,以免影响MySQL的安全性。 - 重置root密码后,请将新的root密码记录保存,以免再次忘记。