Docker安装MySql完整教程、实操
镜像官网可以所有应用,选择安装环境:会给出安装命令,例如:docker pull redis 默认拉取最新的版本(指定版本:docker pull redis:5.0.8)
一、拉取mysql官方镜像,镜像更多解释
1、登录docker 镜像官网搜索mysql,找到制定的版本拉去,这里使用mysql5.7.30
docker pull mysql:5.7.

2、查看docker的镜像
docker images

二、根据镜像创建mysql容器
1、 创建容器内在本地的映射文件夹
mkdir -p /root/mysql/data /root/mysql/logs /root/mysql/conf
2、初始化mysql的配置文件*.cnf,在/root/mysql/conf
touch /root/mysql/conf/my.cnf
3、创建docker容器并启动,将数据,日志,配置文件映射到本机
创建容器返回container的id
docker run -p : --name mysql -v /root/mysql/conf:/etc/mysql/conf.d -v /root/mysql/logs:/var/log/mysql -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.30
-d: 后台运行容器,也可以使用镜像id
-p 将容器的端口映射到本机的端口
-v 将主机目录挂载到容器的目录
-e 设置参数 MYSQL_ROOT_PASSWORD 指定登录密码

启动容器两种方式
a、指定container的id
docker start f46be2f4e1c7
b、指定容器的名字
docker start mysql
4、查看服务是否启动
docker ps

5、登录docker容器,登录mysql
docker exec -it f46be2f4e1c7 /bin/bash
f46be2f4e1c7 是上面docker ps中展示容器id

6、查看文件是否本持久化到本地
ls /root/mysql/data/
或者
cd /root/mysql/data/
ls

两种异常情况:
1、 客户端登录链接异常(一种权限不足下面为解决方案、另一种修改密码版本不同方式不同)
#登录docker容器(方式参考上方文档)后登录mysql
mysql -uroot -proot
#修改登录者的权限
GRANT ALL ON *.* TO 'root'@'%';
#刷新命令生效
flush privileges;
2、JDBC启动报链接异常,链接异常是因为缺少必要的参数,根据以下参数进行检测即可。
jdbc:mysql://127.0.0.1:3306/cloud_user?useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=utf-8&autoReconnect=true //北京时间==东八区时间!=北京当地时间 serverTimezone=GMT%2B8
//或者使用上海时间serverTimezone=Asia/Shanghai
拓展文档:
Docker(部署常见应用):Docker安装MySql完整教程、实操
Docker实现Mysql主从复制实战(一主一从、双主双从)
mysql 5.8以上版本有问题可以参考:
mysql-管理命令【创建用户、授权、修改密码、删除用户和授权、忘记root密码】
Docker安装MySql完整教程、实操的更多相关文章
- yum install mysql-community-server yum方式安装mysql(社区版实操)
前言:rpm方式或者这种yum安装时比较简单的方式,但是不推荐,但是确实很着急的话,可以采用这种安装这种方式不利于后续对mysql的管理,如果是多实例或者是复杂的一些架构的话,还是推荐利用源码包编译方 ...
- Centos7中用Docker安装MySQL教程
第一步 安装Docker 1.1 参考这位博主给出的命令安装好 https://blog.csdn.net/weixin_43423864/article/details/109481260 第二步 ...
- 使用Docker安装Mysql
最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...
- docker安装mysql(Baas)
Docker安装mysql 5.7版本 //拉取mysql镜像 docker pull mysql:5.7 下载完成后,在本地镜像列表里查到REPOSITORY为mysql,标签为5.7的镜像. do ...
- 安装docker并使用docker安装mysql
安装Docker 1. Docker 教程地址:https://www.runoob.com/docker/centos-docker.install.html 2.安装docker 命令:yum i ...
- Docker安装MySQL,Redis,阿里云镜像加速
Docker安装 虚拟化容器技术.Docker基于镜像,可以秒级启动各种容器.每一种容器都是一个完整的环境,容器之间相互隔离. 如果之前安装的有其他版本,卸载旧的版本. $ sudo yum remo ...
- docker初识-docker安装、基于docker安装mysql及tomcat、基本命令
一.docker是什么 用go语言开发,开源的应用容器引擎,容器性能开销极低 二.整体架构图 Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 r ...
- Docker学习实践 - Docker安装MySql数据库
Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...
- 使用docker安装mysql和redis
本文介绍在linux下使用docker安装mysql和redis. 原文地址:代码汇个人博客 http://www.codehui.net/info/59.html 测试环境:centos7.6,do ...
随机推荐
- warning: directory not found for option“XXXXXX” 解决方案
从项目中删除了某个目录.文件以后,编译出现警告信息: ld: warning: directory not found for option"XXXXXX" 很奇怪,为什么已经 ...
- K - 回转寿司(值域段数(板题) + 动态开点)
回转寿司 Description 酷爱日料的小Z经常光顾学校东门外的回转寿司店.在这里,一盘盘寿司通过传送带依次呈现在小Z眼前.不同的寿 司带给小Z的味觉感受是不一样的,我们定义小Z对每盘寿司都有一个 ...
- python中的列表和元组都有哪些区别
列表(list)和元组(tuple)的一些基础 list和tuple都是一个可以放置任意数据类型的有序集合,都是既可以存放数字.字符串.对象等 list和tuple都支持负索引 In [8]: num ...
- iOS开发 - 开发版+企业版无线发布一键打包
背景:项目进入快速迭代期,需要快速地交付出AdHoc版本和企业无线发布版本.每次打包都要来回切换bundle identifier和code signing,浪费很多时间. 示例项目名称名称为Test ...
- stylus--安装及使用方法
stylus介绍 Stylus 是一个CSS的预处理框架,2010年产生,来自Node.js社区,主要用来给Node项目进行CSS预处理支持,所以 Stylus 是一种新型语言,可以创建健壮的.动态的 ...
- Go gRPC进阶-超时设置(六)
前言 gRPC默认的请求的超时时间是很长的,当你没有设置请求超时时间时,所有在运行的请求都占用大量资源且可能运行很长的时间,导致服务资源损耗过高,使得后来的请求响应过慢,甚至会引起整个进程崩溃. 为了 ...
- 【视频+图文】Java经典基础练习题(六):猴子吃桃子问题
目录 一.具体题目 二.视频讲解 三.思路分析(逆向思维) 四.代码+结果 代码: 结果: 五.彩蛋 一.具体题目 猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天 早上又将剩下 ...
- "六号标题"组件:<h6> —— 快应用组件库H-UI
 <import name="h6" src="../Common/ui/h-ui/text/c_h6"></import> < ...
- Arthas-Java的线上问题定位工具
Arthas(阿尔萨斯) 能为你做什么? Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱. 当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决: 这个类从哪个 jar ...
- Java 数据类型转换的骚操作和神奇现象
问:银行用什么数据类型来表示余额?float还是double? 都不是!!下面说明为什么都不可以呢? public static void main(String[] args) { //浮点数他都是 ...