docker基础篇:安装mysql单机版

在这里插入图片描述

8.Docker常规安装简介

在这里插入图片描述
在这里插入图片描述注意点1:
左面是原始的微服务架构,你要自己linux中搭建mysql、redis繁琐费事,右面是使用docker搭建的服务,直接docker run xx启动即可。

8.1 docker常规安装总体步骤

docker常规安装总体步骤
1)搜索镜像
2)拉取镜像
3)查看镜像
4)启动镜像
5)停止容器
6)移除容器

8.3 安装mysql

在这里插入图片描述

8.3.1 docker hub上面查找mysql镜像

在这里插入图片描述

8.3.2 从docker hub上(阿里云加速器)拉取mysql镜像到本地标签为5.7

在这里插入图片描述

8.3.3 使用mysql5.7镜像创建容器(也叫运行镜像)

注意点1:
命令出处,哪里来的?
在这里插入图片描述

简单版

在这里插入图片描述

使用步骤:
1)使用mysql镜像
2)建库建表插入数据
3)外部Win10也来连接运行在dokcer上的mysql容器实例服务
4)思考问题

注意点1:
使用mysql镜像

docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
docker ps
docker exec -it 容器ID /bin/bash
mysql -uroot -p

在这里插入图片描述

注意点2:
建库建表插入数据
在这里插入图片描述

注意点3:
外部Win10也来连接运行在dokcer上的mysql容器实例服务
在这里插入图片描述

注意点4:
问题总结:

问题1:插入中文数据报错,为什么报错如图1? docker上默认字符集编码隐患?

在这里插入图片描述

如图1

docker里面的mysql容器实例查看,内容如下:

SHOW VARIABLES LIKE 'character%';

在这里插入图片描述

如图2

解决方案:修改默认编码,使其支持中文写入

问题2:删除容器后,里面的mysql数据如何办?

解决方案:启动mysql容器的是否配置数据卷。

注意点5:
启动mysql之前,执行命令 pes -ef |grep mysql查看是否docker内已经启动mysql了,因为mysql默认端口3306,如果用户在linux环境下已经安装并启动一个mysql,而再运行docker run msql就会报错,会报端口被占用。
在这里插入图片描述

实战版

在这里插入图片描述
使用步骤:
1)新建mysql容器实例
2)新建my.cnf
3)重新启动mysql容器实例再重新进入并查看字符编码
4)再新建库新建表再插入中文测试
5)结论
6)假如将当前容器实例删除,再重新来一次,之前建的db01实例还有吗?trytry

注意点1:
新建mysql容器实例

docker run -d -p 3306:3306 --privileged=true -v /zzyyuse/mysql/log:/var/log/mysql -v /zzyyuse/mysql/data:/var/lib/mysql -v /zzyyuse/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456  --name mysql mysql:5.7

在这里插入图片描述

注意点2:
新建my.cnf,通过容器卷同步给mysql容器实例

[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8

在这里插入图片描述

注意点3:
重新启动mysql容器实例再重新进入并查看字符编码
在这里插入图片描述

注意点4:
再新建库新建表再插入中文测试
在这里插入图片描述

注意点5:
结论
之前的DB 无效
修改字符集操作+重启mysql容器实例
之后的DB 有效,需要新建
结论:docker安装完MySQL并run出容器后,建议请先修改完字符集编码后再新建mysql库-表-插数据
在这里插入图片描述

注意点6:

问题:假如将当前容器实例删除,再重新来一次,之前建的db01实例还有吗?

答案:还是依然存在的

本人其他相关文章链接

1.《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
2.《docker高级篇(大厂进阶):2.DockerFile解析》包括:是什么、DockerFile构建过程解析、DockerFile常用保留字指令、案例、小总结
3.《docker高级篇(大厂进阶):3.Docker微服务实战》
4.《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
5.《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
6.《docker高级篇(大厂进阶):6.Docker轻量级可视化工具Portainer》
7.《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
8.docker基础篇:安装tomcat
9.docker基础篇:安装mysql单机版
10.docker基础篇:安装redis单机版
11.docker高级篇(大厂进阶):安装mysql主从复制
12.docker高级篇(大厂进阶):安装redis集群

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘大猫.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值