docker 中运行 mysql
在宿主机Host的终端执行:
1、 搜索docker镜像仓库中提供的mysql
docker search mysql
2、下载mysql镜像
docker pull mysql
3、改变目录权限,非必须
可以先执行第四步,到第五步时发现容器的状态时是Exited时,执行第六步来查看原因。
如果提示无权限访问时,则需要补上本步骤,这是因为开启SELinux enabled时权限控制更严格所导致
chcon -Rt svirt_sandbox_file_t /data/mysql
4、创建并运行mysql容器
docker run -d --name myMysql -v /data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql
无论是否运行成功,均会得到容器ID
稍微解释一下:
-d 表示在后台运行容器
--name 表示为后台运行的容器取别名,便于后续的操作
-v 用来指定数据卷,将正在运行mysql的容器上的/var/lib/mysql目录映射到宿主机上的/data/mysql目录
5、查看容器的运行状态
docker ps 或 docker ps -a
CONTAINER ID #容器ID
IMAGE #镜像名称
COMMAND #执行的cmd
CREATED #创建了多久
STATUS #容器的status:Up(正在运行) or Exited(不在运行)
PORTS #端口映射情况,默认tcp
NAMES #容器别名
6、查看容器的运行日志
docker logs myMysql
有些系统中,如果没有设置第三步,可能运行mysql会失败,失败原因可以通过查看容器的运行日志来了解。
7、与容器进行交互
docker exec -t -i myMysql /bin/bash
执行之后会获得容器内的/bin/bash终端,
root@35e1fab30962:/#,其中35e1fab30962是容器ID
此时就可以在这里执行mysql命令了
Demo:
root@35e1fab30962:/# mysql -uroot -p
#输入之前设置的密码,此处为123456,输入正确后进入到mysql中
mysql> use mysql;
mysql> select * from user\G;
8、停止正在运行的mysql容器
docker stop myMysql
9、启动已创建的mysql容器
docker start myMysql
10、mysql容器的数据导出
docker exec myMysql sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /some/path/on/your/host/all-databases.sql
110、更多docker命令帮助,请使用
docker --help 或 docker cmd --help
999、更多docker中mysql的使用,请参见
作者:陌陌的日记
链接:https://www.jianshu.com/p/dbc59702f0dd
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
docker 中运行 mysql的更多相关文章
- 在docker中运行mysql实例
Docker是一种新兴的虚拟化技术,能够一定程度上的代替传统虚拟机.下图是容器跟虚拟机的对比 对docker有个大致了解,学习docker断断续续,虽说学习不能急于求成,但断断续续学的话,浪费的碎片化 ...
- 沉迷 Docker,无法自拔(在 Docker 中运行 MySQL)
记得之前做网站开发的时候,因为服务端用的 MySQL 数据库,为了方便调试以及隔离生产与开发环境,自己就在本地也安装了一个 MySQL 数据库.但是用着用着慢慢的也发现了一些不舒服的地方,比如常驻后台 ...
- 在 Docker 中运行 MySQL
首先启用 Windows 10 的容器功能,然后去 Docker 的官网,下载安装包. 跟着安装程序走完流程,Docker 就在 Windows 上愉快的游起来啦~ 设置镜像地址 Docker 在创建 ...
- 在Docker中运行纸壳CMS并配置使用MySql
纸壳CMS是基于ASP.Net Core开发的可视化内容管理系统,可以跨平台部署,可以在容器中运行.接下来看看如何在docker中运行纸壳CMS. GitHub:https://github.com/ ...
- linux小白成长之路8————访问Docker中的mysql
[内容指引] 本篇实战演示如何操作Docker中的mysql数据库,包含以下五个知识点: 登录容器: 登录mysql: 运行SQL指令创建数据库: 退出mysql: 退出容器: 1.登录容器 我们在上 ...
- 在docker中使用mysql数据库,在局域网访问
1.获取mysql镜像 docker pull mysql:5.6 注意:此处之所以获取mysql5.6是因为mysql5.7在centos7中启动可能会报错 2.查看镜像列表 docker imag ...
- docker微服务部署之:四、安装docker、docker中安装mysql和jdk1.8、手动构建镜像、部署项目
docker微服务部署之:三,搭建Zuul微服务项目 1.Centos7安装Docker 详见:Centos7安装Docker 2.Docker中安装jdk1.8 详见:使用Docker构建jdk1. ...
- Docker中运行MySQL5.7并挂载宿主机目录到镜像
原文:Docker中运行MySQL5.7并挂载宿主机目录到镜像 1.1 拉取mysql镜像 docker pull mysql:5.7 1.2 创建用于挂载的目录 mkdir -p /data/mys ...
- 如何让传统ASP.NET网站在Docker中运行
本文主要描述如何让传统ASP.NET网站在Docker中运行,侧重Docker image 搭建. 使用条件: Docker for windows 用户切换到Windows 容器模式 Windows ...
随机推荐
- Python网络编程之Socket的简单实现
一.引入 关于Python的网络编程,最基础莫过于socket了. socket,又称“套接字”,网络上的两个程序如果想要实现双向的数据通信,需要建立连接,这个连接的一端就称为一个socket. py ...
- javaScript遍历对象、数组总结(转载)
javaScript遍历对象.数组总结 转载来源 https://www.cnblogs.com/chenyablog/p/6477866.html 在日常工作过程中,我们对于javaScript遍 ...
- [android] 安卓进程优先级&为什么使用服务
应用程序:一组组件(activity service provider receiver)的集合 一般情况下,一个应用程序对应一个进程 一般情况下,关闭掉应用,关闭掉所有界面,应用程序的进程还在后台运 ...
- 你所不知道的JSON.stringify
译者按: 老司机们,你知道JSON.stringify还有第二个和第三个可选参数吗?它们是什么呢? 原文: What you didn’t know about JSON.Stringify 译者: ...
- 课程作业——熟悉常用的Linux操作
cd命令:切换目录 (1) 切换到目录 /usr/local cd /usr/local (2) 去到目前的上层目录 cd .. (3) 回到自己的主文件夹 cd ~ ls命令:查看文件与目录 (4) ...
- 封装个 Android 的高斯模糊组件
本篇文章已授权微信公众号 hongyangAndroid (鸿洋)独家发布 最近基于 Android StackBlur 开源库,根据自己碰到的需求场景,封装了个高斯模糊组件,顺便记录一下. 为什么要 ...
- vue从入门到进阶:简介(一)
前言 用了这么久的vue了,但是一直没有时间写个系列文章,现在抽一定时间总结下vue的知识点. 首先,Vue 不支持 IE8 及以下版本,因为 Vue 使用了 IE8 无法模拟的 ECMAScript ...
- 一个简单的scrollTop动画的方法
var autoScrollTop = function (param) { var delay = param.scrollDom.height() * 20; param.dom.animate( ...
- Java的优先级任务队列的实践
队列的基本理解 在说队列之前说两个名词:Task是任务,TaskExecutor是任务执行器 而我们今天要说的队列就完全符合某机构这个情况,队列在有Task进来的时候TaskExecutor就立刻开始 ...
- JavaScript中的原型链和继承
理解原型链 在 JavaScript 的世界中,函数是一等公民. 上面这句话在很多地方都看到过.用我自己的话来理解就是:函数既当爹又当妈."当爹"是因为我们用函数去处理各种&quo ...