docker mysql设置了初始密码还是连不上

今天迁移服务器的时候,设置了密码,但是mysql死活进不去,一开始以为是mysql加密方式的问题。后来发现,是因为我挂载的mysql目录里面有原来的数据库文件,而数据库的密码是其它机器的密码,所以一直登不上去。–env 设置的密码没有效果,所以最后用原来的密码就登上去了。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 可以按照以下步骤来重置 DockerMySQL 的密码: 1. 首先,进入运行 MySQL 容器的服务器。 2. 然后,使用以下命令进入 MySQL 容器: ``` docker exec -it [CONTAINER ID] bash ``` 其中,[CONTAINER ID] 是运行 MySQL 容器的 ID。 3. 接着,使用以下命令登录 MySQL: ``` mysql -u root -p ``` 然后输入 MySQL初始密码。 4. 输入以下命令来修改密码: ``` ALTER USER 'root'@'localhost' IDENTIFIED BY '[NEW PASSWORD]'; ``` 其中,[NEW PASSWORD] 是你想设置的新密码。 5. 最后,退出 MySQL 和容器,并重新启动容器: ``` exit docker restart [CONTAINER ID] ``` 现在你就可以使用新密码登录 MySQL 了。 ### 回答2: 要重置DockerMySQL的密码,可以按照以下步骤进行操作: 1. 进入Docker容器: 使用以下命令登录到运行MySQLDocker容器: ``` docker exec -it <容器ID或名称> bash ``` 2. 停止MySQL服务: 在Docker容器中执行以下命令停止MySQL服务: ``` service mysql stop ``` 3. 启动MySQL服务,并跳过权限检查: 使用以下命令以跳过权限检查的方式启动MySQL服务: ``` mysqld_safe --skip-grant-tables & ``` 4. 以root用户登录到MySQL: 执行以下命令连接到MySQL服务器: ``` mysql -u root ``` 5. 更改密码: 执行以下命令更新root用户的密码: ``` UPDATE mysql.user SET authentication_string=PASSWORD('<新密码>') WHERE User='root'; ``` 注意:将`<新密码>`替换为你希望设置的新密码。 6. 刷新权限: 执行以下命令刷新权限: ``` FLUSH PRIVILEGES; ``` 7. 退出MySQL: 执行以下命令退出MySQL命令行模式: ``` exit; ``` 8. 停止MySQL服务: 再次在Docker容器中执行以下命令停止MySQL服务: ``` service mysql stop ``` 9. 重启MySQL服务: 最后,在Docker容器中执行以下命令启动MySQL服务: ``` service mysql start ``` 这样,你的Docker中的MySQL密码就已经重置成功了。记得使用新密码登录MySQL进行验证。 ### 回答3: 要在Docker中重置MySQL密码,可以按照以下步骤进行操作: 1. 查找正在运行的MySQL容器的ID或名称。可以使用以下命令查看正在运行的容器:`docker ps`。 2. 使用以下命令进入MySQL容器的shell环境:`docker exec -it <容器ID或名称> bash`。 3. 在MySQL容器的shell环境中,使用以下命令以root用户身份登录到MySQL服务器:`mysql -u root -p`。根据提示输入当前MySQL的root密码(如果已经设置了密码)。 4. 成功登录到MySQL服务器后,使用以下命令选择要使用的数据库:`use mysql;` 5. 使用以下命令更新root用户的密码: ``` UPDATE user SET authentication_string=PASSWORD('新密码') WHERE User='root'; ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; ``` 将`新密码`替换为要设置的新密码。 6. 执行完上述命令后,使用以下命令刷新MySQL权限表:`flush privileges;` 7. 退出MySQL服务器,然后退出MySQL容器的shell环境。 8. 重新启动MySQL容器,以使密码更改生效:`docker restart <容器ID或名称>`。 完成上述步骤后,MySQL容器中的root密码将被重置为新的密码。现在您可以使用新密码登录MySQL服务器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值