docker安装多个mysql

这篇博客详细介绍了如何在Docker上安装和管理MySQL,包括卸载旧版本Docker,安装稳定版和测试版仓库,启动和停止Docker服务,以及创建和管理多个MySQL容器。针对8.0及以上版本的MySQL,还提供了解决Authenticationplugin问题的步骤。
摘要由CSDN通过智能技术生成
第一篇 简单的docker安装
0、卸载旧版本
# yum remove docker \
  docker-client \
  docker-client-latest \
  docker-common \
  docker-latest \
  docker-latest-logrotate \
  docker-logrotate \
  docker-selinux \
  docker-engine-selinux \
  docker-engine
  
1、安装所需包

第一步卸载mariadb
# yum install -y yum-utils \
   device-mapper-persistent-data \
   lvm2

2、使用以下命令设置稳定的存储库。即使您想从边缘或测试存储库安装构建,也总是需要稳定的存储库。
# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

3、启用边缘和测试存储库
# yum-config-manager --disable docker-ce-edge

4、安装docker
# yum install docker-ce

5、Docker 基本命令
# systemctl start docker  // 启动docker
# systemctl stop docker   // 关闭docker
# docker restart xxx      // 重启一个容器
# docker stop xxx     // 停止一个容器
# docker rm xxx       // 删除一个容器
# docker rm -f xxx        // 强制删除一个容器
# docker log xxx      // 查看容器日志
# docker ps -a        // 查看容器信息
# docker search xxx       // 查看 hub上的 xxxx 镜像
# docker pull xxx     // 下载包



第二篇 简单的docker下安装mysql
1、添加镜像
docker pull mysql

2、在/data下新建文件夹mysql,进入mysql文件夹新建文件夹data
mkdir /data/mysql
mkdir /data/mysql/data

3、启动
docker run -d -e MYSQL_ROOT_PASSWORD=123456\
 --name mysql --net elec_default --restart always \
 -v /data/mysql/data:/var/lib/mysql -p 3306:3306 mysql

4、说明
docker run -d -e MYSQL_ROOT_PASSWORD=123456\      # 指定数据库密码
--name mysql --net elec_default --restart always \   # 指定容器名称和设置自启
-v /data/mysql/data:/var/lib/mysql -p 3306:3306 mysql # 设置存储路径、端口

5、如果mysql是 8 版本以上应该会出一下错误
连接Docker启动的mysql出现:ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: ÕÒ²»µ½Ö¸¶¨µÄÄ£¿é¡£

解决方案
  1.进入mysql容器
    docker exec -it mysql /bin/bash
  2.进入mysql
    mysql -uroot -p123456
  3.修改密码
    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';


第三篇 docker下安装多个mysql
1、首先安装docker
	参考第一篇安装docker
	参考第二篇安装mysql

2、创建文件
# mkdir /data
# mkdir /data/mysql
# mkdir /data/mysql/data5.6
# mkdir /data/mysql/data5.7
# mkdir /data/mysql/data8.0

3、添加镜像
# docker pull mysql:5.6
# docker pull mysql:5.7
# docker pull mysql:8.0

4、启动镜像
# docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.6 --restart always -v /data/mysql/data5.6:/var/lib/mysql -p 3306:3306 mysql:5.6
# docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.7 --restart always -v /data/mysql/data5.7:/var/lib/mysql -p 3307:3306 mysql:5.7
# docker run -d -e MYSQL_ROOT_PASSWORD=123456 --name mysql8.0 --restart always -v /data/mysql/data8.0:/var/lib/mysql -p 3308:3306 mysql:8.0

5、打开端口
//开启防火墙
# systemctl start firewalld
//开启3306端口
# firewall-cmd --zone=public --add-port=3306/tcp --permanent
//开启3307端口
# firewall-cmd --zone=public --add-port=3307/tcp --permanent
//开启3308端口
# firewall-cmd --zone=public --add-port=3308/tcp --permanent
//重启防火墙
# systemctl restart firewalld.service

6、本地测试
Navicat
     
7、如果mysql是 8 版本以上应该会出一下错误
连接Docker启动的mysql出现:ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: ÕÒ²»µ½Ö¸¶¨µÄÄ£¿é¡£

解决方案
  1.进入mysql容器
    docker exec -it mysql /bin/bash
  2.进入mysql
    mysql -uroot -p123456
  3.修改密码
    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';     

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值