docker:安装mysql多个

Posted struts-pring

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker:安装mysql多个相关的知识,希望对你有一定的参考价值。

docker:安装mysql多个
文章来源:https://www.cnblogs.com/hello-tl/p/9238298.html 

1.首先安装docker

  参照一下网址安装docker

  docker:安装 https://www.cnblogs.com/hello-tl/p/8901132.html

  参照安装一个mysql

  docker:安装mysql https://www.cnblogs.com/hello-tl/p/9234429.html

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.本地连接测试



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‘;

文章来源:https://www.cnblogs.com/hello-tl/p/9238298.html 

LINUX 简单的,但只有天才才能知道他的简单

 

 

docker images : 列出本地镜像
docker pull : 从镜像仓库中拉取或者更新指定镜像

docker run :创建一个新的容器并运行一个命令
-d: 后台运行容器,并返回容器ID
-p: 端口映射,格式为:主机(宿主)端口:容器端口
--name="nginx-lb": 为容器指定一个名称
-v:目录映射,格式为:主机目录:容器目录

docker rm :删除一个或多个容器
docker start :启动一个或多少已经被停止的容器
docker stop :停止一个运行中的容器
docker kill :杀掉一个运行中的容器(强制)
docker restart :重启容器
docker port :列出指定的容器的端口映射,或者查找将PRIVATE_PORT NAT到面向公众的端口。

docker logs : 获取容器的日志
-f : 跟踪日志输出
--since :显示某个开始时间的所有日志
-t : 显示时间戳
--tail :仅列出最新N条容器日志

docker exec -i -t  mynginx /bin/bash:在容器mynginx中开启一个交互模式的终端,即通过SSH协议进入容器

docker ps : 列出容器
-a :显示所有的容器,包括未运行的。

docker cp:拷贝主机docker cp /www/runoob 96f7f14e99ab:/www/

 

以上是关于docker:安装mysql多个的主要内容,如果未能解决你的问题,请参考以下文章

docker 下安装 mysql 及登录

Docker Compose安装使用,及搭建nginx+php+mysql基础应用实例

docker学习1-CentOS 7安装docker环境

docker学习1-CentOS 7安装docker环境

基于Docker的Mysql主从复制搭建

基于Docker的Mysql主从复制搭建