社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
查看docker中正在运行的容器
docker ps
进入MySQL 容器中
sudo docker exec -it 321459c00aa0 /bin/bash
在容器中: /etc/mysql/conf.d/ 下有 docker.cnf 文件
在 docker.cnf 文件中追加 skip-grant-tables
操作命令如下:
下载容器中的docker.cnf 文件 到宿主主机中
docker cp 321459c00aa0:/etc/mysql/conf.d/docker.cnf /home/
编辑下载的文件追加 skip-grant-tables;
[mysqld]
skip-host-cache
skip-name-resolve
skip-grant-tables
把编辑好的文件重新上传到MySQL容器中
docker cp /home/docker.cnf 321459c00aa0:/etc/mysql/conf.d/
重新启动MySQL 容器
docker restart 321459c00aa0
进入MySQL容器中
sudo docker exec -it 321459c00aa0 /bin/bash
密码可不用输入直接回车跳过
接下开就是修改么MySQL 密码的操作了
mysql> set password for root@localhost = password('123');
# 刷新权限
mysql> flush privileges;
# 退出
mysql> quit
如果采用上面的方法修改密码;连接时报错: Access denied for user 'root'@'182.119.227.139' (using password: YES)
那么就采用这种方式修改密码:
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> UPDATE user SET authentication_string=PASSWORD('123') where USER='root';
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 2 Changed: 1 Warnings: 1
mysql> flush privileges;
最后把在 docker.cnf 文件中追加的 : skip-grant-tables 删除
重启 MySQL容器
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!