1.下载mysql:docker pull mysql:5.7
2.运行mysql命令:docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
3.连接发现

4.第一步进入mysql: docker exec -it mysql /bin/bash
ps:mysql为你dokcer 启动的 name
输入密码登录
mysql -uroot -p123456
让root 可以被所有ip连接,刷新权限
grant all privileges on *.* to root@'%' with grant option;
flush privileges;
修改用户信息
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
检查用户信息
use mysql ; select user,host,authentication_string,plugin from user;

重新连接mysql依然失败
之后检查防火墙状态依然没问题
防火墙关于3306配置参考文章3306链接
5.设置安全组配置
添加3306配置,入战规则和出站规则一样

继续连接依然不行
6.检查端口
netstat -an | grep :3306
3306前为0没问题,如果还有127.0.0.1需要配置mysqld.cnf 将这个127.0.0.1注释掉 #bind-address = 127.0.0.1
注释参考链接docker mysql 配置

7.解决方案:发现腾讯云下面还有一个防火墙需要进行配置,添加3306请求允许规则

8.连接成功

本文介绍了使用Docker安装MySQL 5.7的步骤,包括下载和运行命令。在连接MySQL时遇到问题,依次检查了进入容器登录、防火墙状态、安全组配置、端口等,最终发现腾讯云还有一个防火墙,添加3306请求允许规则后连接成功。

416

被折叠的 条评论
为什么被折叠?



