文章目录

  • 环境配置
  • 安装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,而本地还没下载MySQL镜像,docker会默认自动下载MySQL镜像。指令执行完成后,分别输入指令查看当前docker和镜像信息:
docker ps -a
docker images

修改MySQL加密方式

由于最新版MySQL的加密方式改变了,如果使用Navicat Premium 15等工具连接可能无法连接成功,我们需要对docker里面的MySQL进行修改。
输入docker exec -it mysql8.0 bash进入当前docker,其中mysql8.0是这个docker的容器名字,如图所示:

此时,我们已经进入docker内部,然后分别输入MySQL指令修改用户密码的加密方式,指令如下:

mysql -uroot -p1234
use 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之后,剩下的操作就是修改MySQL的用户密码加密方式,这个操作在上述已有讲述。

docker 安装部署多个MySQL相关推荐

  1. Docker安装部署MongoDB及MySql和MongoDB的语法对比

    MongoDB是一个免费的.开源的.跨平台分布式面向文档存储的数据库,由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之间的产品 ...

  2. Linux使用Docker安装Nacos并配置MySQL数据源,将Springboot的配置文件部署到Nacos

    Linux使用Docker安装Nacos并配置MySQL数据源,将Springboot的配置文件部署到Nacos 前言 一.Docker中安装配置Nacos 安装Docker 拉取Nacos镜像 启动 ...

  3. saiku docker配置部署_【安装教程】01 Gitea Docker 安装部署 - 【SkywenCode】技术团队基...

    在2016年-2019年,SkywenCode技术团队使用码云Gitee 作为线上代码库管理,基于敏捷开发和持续构建的思路,我们整体基础建设以Drone / Jenkins + Docker 的方式构 ...

  4. Docker安装部署及使用

    Docker安装部署及使用 实验内容 安装Docker. 创建自己的第一个容器 容器使用,查看.启动.进入.停止.删除对应容器. 容器安装MySQL. Experimental environment ...

  5. ITOP-1 Docker安装部署itop

    ITOP-1 Docker安装部署itop 一.Docker安装部署 1.下载docker源 2.yum安装docker,并运行 3.配置docker镜像加速地址 二.ITOP部署 1.登录[dock ...

  6. Docker安装部署RabbitMQ

    https://blog.csdn.net/super_rd/article/details/70792746  http://muxiulin.cn/archives/category/rabbit ...

  7. 使用docker安装部署Spark集群来训练CNN(含Python实例)

    使用docker安装部署Spark集群来训练CNN(含Python实例) 本博客仅为作者记录笔记之用,不免有很多细节不对之处. 还望各位看官能够见谅,欢迎批评指正. 博客虽水,然亦博主之苦劳也. 如需 ...

  8. Docker实战:Docker安装部署RabbitMQ

    使用Docker安装部署RabbitMQ 1.docker search rabbitmq:management 2.docker pull rabbitmq:management 注意:如果dock ...

  9. 服务器上使用docker安装部署禅道zentao

    服务器上使用docker安装部署禅道zentao 目的:在服务器上安装docker禅道容器 一.查看服务器是否有禅道容器 docker ps -a 可以查看到所有容器. 二.从docker库下载禅道镜 ...

最新文章

  1. 在线拼音输入法,挺好玩的。
  2. Windows 10 powershell 中文乱码解决方案
  3. 【错误记录】Android NDK 错误排查记录 ( java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader )
  4. 3变量程序_PLC的程序结构及其特点
  5. Python和Java就业前景对比
  6. 1074. Reversing Linked List (25)
  7. Flutter 即学即用系列博客——09 MethodChannel 实现原生与 Flutter 通信(二)
  8. localhost 拒绝了我们的连接请求。_Zipkin请求链路日志聚合
  9. mysql慢日志分析工具_mysql慢查日志分析工具 percona-toolkit
  10. 每天一道剑指offer-二进制中1的个数
  11. 巧记肖特基二极管BAT54C、BAT54S、BAT54A
  12. 计算机编程语言的分类
  13. 怎么彻底卸载趋势杀毒软件
  14. graphpad 中文版使用手册
  15. Linux - Centos7 查询系统安装时间以及硬盘序列号命令
  16. oracle找出两张表中不同的数据
  17. 【第四章-2】Python爬虫教程(协程,多任务异步协程,aiohttp模块,异步爬虫实战:爬取《西游记》全部章节内容)
  18. 后台Base64解码图片变小的坑
  19. CF1139D Steps to One 题解
  20. Matlab axis函数

热门文章

  1. 如何对AD和Exchange进行安全加固满足护网需要?
  2. mysql 8.0.28版本安装配置方法图文教程
  3. js 计算含中文的字符串长度
  4. oracle rds 运维服务_oracle 数据库服务启停
  5. vb数字转汉字大写值
  6. Centos7 Redis 设置密码
  7. 游戏人生:iOS竟自带八倍镜功能:堪称吃鸡“外挂”
  8. JavaScript基础:浅聊事件循环(Event LooP)以及微任务,宏任务,DOM渲染
  9. synchronized同步锁的三种方式
  10. table表格的使用(动态数据展示)