Docker方式启动MySQL 8.0 容器并支持外部连接,需要完成以下配置:
1. 启动 MySQL 容器并映射端口
在启动 MySQL 容器时,需要将容器的 3306 端口映射到宿主机的某个端口上,以便外部可以通过宿主机的 IP 地址和端口访问 MySQL。例如:
docker run -d \
--name mysql-server \
-e MYSQL_ROOT_PASSWORD=my-secret-pw \
-p 3306:3306 \
mysql:8.0
-p 3306:3306
:将宿主机的 3306 端口映射到容器的 3306 端口。
2. 配置 MySQL 允许远程访问
默认情况下,MySQL 只允许本地访问。需要进入容器并修改 MySQL 的用户权限,以允许远程访问。
进入容器并登录 MySQL
docker exec -it mysql-server bash
mysql -uroot -p
输入你在启动容器时设置的 MYSQL_ROOT_PASSWORD
。
3. 查看用户权限
在 MySQL 命令行中,运行以下查询,查看 root
用户的访问权限:
SELECT user, host FROM mysql.user