docker|docker 安装部署多个MySQL的实现步骤
目录
- 环境配置
- 安装MySQL
- 修改MySQL加密方式
- 安装第二个MySQL
环境配置 本地操作系统:Win10
虚拟机的操作系统:CentOS Stream 8
已安装docker,可以参考详细安装教程
安装MySQL 如果docker安装成功,我们可以直接使用指令启动一个docker运行MySQL服务,指令如下:
docker run -p 3306:3306 --name mysql8.0 -e MYSQL_ROOT_PASSWORD=1234 -d mysql
指令参数说明:
- run:启动docker。
- -p 3306:3306:设置操作系统与docker的端口对接,第一个3306是操作系统的端口,用于对完使用;第二个是docker运行MySQL的服务端口3306。
- –name mysql8.0:是启动这个docker的容器名字,可以自行命名。
- -e MYSQL_ROOT_PASSWORD=1234是设置docker的MySQL的root用户密码。
- -d mysql:是镜像名称,如果没有规定MySQL版本,使用mysql默认安装最新版本,如果规定mysql版本,可以加上版本信息,如-d mysql5.7。
docker ps -adocker images
文章图片
修改MySQL加密方式 由于最新版MySQL的加密方式改变了,如果使用Navicat Premium 15等工具连接可能无法连接成功,我们需要对docker里面的MySQL进行修改。
输入
docker exec -it mysql8.0 bash
进入当前docker,其中mysql8.0是这个docker的容器名字,如图所示:文章图片
此时,我们已经进入docker内部,然后分别输入MySQL指令修改用户密码的加密方式,指令如下:
mysql -uroot -p1234use mysql; alter user 'root'@'%' identified with mysql_native_password by '1234'; select host,user,plugin,authentication_string from mysql.user;
指令执行结果如图所示:
文章图片
最后分别输入两次
exit
退出MySQL和docker。在Win10的Navicat Premium 15连接虚拟机的CentOS的docker的MySQL,连接端口3306是启动run指令的参数 - -p 3306:3306的第一个端口,如图所示。
文章图片
安装第二个MySQL 如果要在同一个操作系统运行多个docker的MySQL,只需在run指令设置参数 - -p 的对完端口即可,比如启动第二个MySQL服务,可执行下面指令:
docker run -p 3307:3306 --name mysql8.1 -e MYSQL_ROOT_PASSWORD=1234 -d mysql
上述指令参数说明
- -p第一个参数是3307,代表centos8的3307端口,因为3306端口已被第一个docker占用了;第二个参数3306是docker里面MySQL的运行端口,由于每个docker都是独立运行的,因此两个docker都能使用3306。
- 参数–name必须与第一个docker的命名不能相同,否则会有冲突。
【docker|docker 安装部署多个MySQL的实现步骤】到此这篇关于docker 安装部署多个MySQL的实现步骤的文章就介绍到这了,更多相关docker安装部署多MySQL内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- Win10 + Ubuntu20.04 双系统+双硬盘安装
- 计算机基础|计算机安装windows7和windows10双操作系统
- 技能类相关|【工具使用】SecureCRT的下载、安装图文详细过程介绍
- Docker|Docker 镜像导入导出过程介绍
- 离线安装MySQL
- 三个步骤,从零开始快速部署LoRaServer
- pytorch|yolov5-gpu版本部署与测试中遇到的问题与解决
- Linux系统安装后IP能通端口不通的问题处理方法
- 安装|安装 UE 源码版
- Oracle安装|Oracle安装 - shmmax和shmall设置