提前准备好Docker环境
拉取MySQL镜像
docker pull mysql:5.7
查看可用版本
docker search mysql
此时可查看到镜像已存在
docker images
让镜像跑起来
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
参数说明:
-p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。
MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。
mysql:5.7:5.7表示版本号。如果mysql:5.7这里不写5.7会默认拉取最新版本进行运行,当然用户通过该项配置需要的MySQL版本。
查看已经在运行的MySQL容器
docker ps
进入容器
docker exec -it 0758ae0e6a15 bash
以root身份进入数据库
mysql -uroot -p
开启远程登录模式
use mysql;
select host,user from user;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
镜像里面 root用户已经有远程连接权限在里面,所以不需要去设置,只是模式不一样才导致无法连接,把root用户的密码改成 mysql_native_password 模式,即可远程连接
更新权限
flush privileges;
至此,MySQL容器部署完成。