学习 SSM 框架的时候需要远程调用服务器的 MySQL,正好此前也学习了 Docker,于是查阅资料,实现了 IDEA 远程连接 Docker MySQL。

1. 操作步骤

1.1 Docker 生成容器

首先需要用远程服务器的 Docker 生成 MySQL 容器。

先拉取、确认。

docker pull mysql

docker images

之后,根据镜像生成容器。

docker run --name mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
# 注意,这里修改了端口,将3307代替了3306,从而避免与远程服务器自己的 MySQL 冲突

docker ps

最后,运行容器。

docker exec -it MYSQL_CONTAINER_ID /bin/bash

1.2 MySQL 权限更改

进入容器后,首先运行 MySQL。

mysql -uroot -p

随后,更改权限。如果是阿里云服务器,还要更改安全组。这里是学校服务器,因此略过更改安全组。直接更改权限,之后刷新权限即可。

alter user 'root'@'%' identified with mysql_native_password by '123456';

flush privileges;

1.3 IDEA 实际调用

最后,新建一个 MySQL 类型的 Data Source 文件,测试连接。

Host 选择目标服务器地址,端口选择 3307,用户名 root,密码 123456,选择测试连接,即可显示可以正常调用。

2. 参考内容

  1. Docker配置MySQL容器+远程连接(全流程)