Docker系列之MySQL安装教程

有了前面的基础教程Docker系列之常用命令操作手册之后,本博客记录一篇mysql的安装教程

mysql镜像查询命令

docker search mysql

几个关键参数解释一下:

  • INDEX docker.io就是docker官网
  • NAME 镜像的名称
  • DESCRIPTION 镜像描述
  • STARS 关注数目
  • OFFICIAL 是否官方
  • AUTOMATED 是否自动的

INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED

docker.io docker.io/mysql MySQL is a widely used, open-source relati... 8930 [OK]

docker.io docker.io/mariadb MariaDB is a community-developed fork of M... 3140 [OK]

docker.io docker.io/mysql/mysql-server Optimized MySQL Server Docker images. Crea... 659 [OK]

docker.io docker.io/percona Percona Server is a fork of the MySQL rela... 462 [OK]

docker.io docker.io/centos/mysql-57-centos7 MySQL 5.7 SQL database server 66

docker.io docker.io/centurylink/mysql Image containing mysql. Optimized to be li... 61 [OK]

docker.io docker.io/mysql/mysql-cluster Experimental MySQL Cluster Docker images. ... 59

docker.io docker.io/deitch/mysql-backup REPLACED! Please use http://hub.docker.com... 41 [OK]

docker.io docker.io/bitnami/mysql Bitnami MySQL Docker Image 35 [OK]

docker.io docker.io/tutum/mysql Base docker image to run a MySQL database ... 34

docker.io docker.io/schickling/mysql-backup-s3 Backup MySQL to S3 (supports periodic back... 28 [OK]

docker.io docker.io/prom/mysqld-exporter 23 [OK]

docker.io docker.io/linuxserver/mysql A Mysql container, brought to you by Linux... 22

docker.io docker.io/centos/mysql-56-centos7 MySQL 5.6 SQL database server 17

docker.io docker.io/circleci/mysql MySQL is a widely used, open-source relati... 16

docker.io docker.io/mysql/mysql-router MySQL Router provides transparent routing ... 14

docker.io docker.io/arey/mysql-client Run a MySQL client from a docker container 13 [OK]

docker.io docker.io/openshift/mysql-55-centos7 DEPRECATED: A Centos7 based MySQL v5.5 ima... 6

docker.io docker.io/fradelg/mysql-cron-backup MySQL/MariaDB database backup using cron t... 4 [OK]

docker.io docker.io/genschsa/mysql-employees MySQL Employee Sample Database 3 [OK]

docker.io docker.io/ansibleplaybookbundle/mysql-apb An APB which deploys RHSCL MySQL 2 [OK]

docker.io docker.io/devilbox/mysql Retagged MySQL, MariaDB and PerconaDB offi... 2

docker.io docker.io/jelastic/mysql An image of the MySQL database server main... 1

docker.io docker.io/monasca/mysql-init A minimal decoupled init container for mysql 0

docker.io docker.io/widdpim/mysql-client Dockerized MySQL Client (5.7) including Cu... 0 [OK]

[root@localhost ~]#

mysql镜像pull

# 不指定版本,默认latest版本
docker pull mysql

查看本地仓库镜像列表

docker images



运行mysql容器

docker run --name mysql01 -d mysql

查看运行的容器

docker ps

发现并没有mysql容器运行



查看所有的容器

docker ps -a

发现mysql容器并没有启动成功



查看对应容器的日志

docker logs c1a7aceff20b

发现如下报错,意思是要指定MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD其中之一,意思就是要设置密码,允许空密码,或者随机生成密码



删除容器

docker rm c1a7aceff20b

查看所有容器

docker ps -a

再次启动容器并指定端口映射3306

docker run -p 3306:3306 --name mysql02 -e MYSQL_ROOT_PASSWORD=11 -d mysql

查看,容器启动成功,如果出现name重复的情况,可以指定另外的name



看官方文档也找到了指定编码的启动方法

docker run -p 3306:3306 --name mysql02 -e MYSQL_ROOT_PASSWORD=11 -d mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

因为是最新版本,客户端登录时候会提示错误:

Error No.2058 Plugin caching_sha2_password could not be loaded

解决方法是,修改加密方式,进入mysql容器

docker exec -it mysql02 bash

mysql root登录

mysql -u root -p

修改加密规则

#修改加密规则
ALTER USER 'root'@'%' IDENTIFIED BY '11' PASSWORD EXPIRE NEVER;

对于学习可以指定'root'@'%',表示所有ip都能访问,对于生产安全性考虑,可以指定指定ip

#更新一下用户的密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '11';

需要刷新权限,才起效

 #刷新权限
FLUSH PRIVILEGES;

重启一下密码,也可以不管

# 重置密码
alter user 'root'@'%' identified by '11';

再次登录测试成功



其它操作:

# 把主机的/conf/mysql文件夹挂载到 mysqldocker容器的/etc/mysql/conf.d文件夹里面,改mysql的配置文件就只需要把mysql配置文件放在/conf/mysql既可
docker run ‐‐name mysql03 ‐v /conf/mysql:/etc/mysql/conf.d ‐e MYSQL_ROOT_PASSWORD=my‐secret‐pw
‐d mysql:tag

详细操作,建议参考Docker官方手册,入门及其它docker教程可以参考我的Docker博客专栏

Docker系列之MySQL安装教程的更多相关文章

  1. CentOS下Mysql安装教程

    CentOS下Mysql安装教程 本人学习Linux时使用的是CentOs5.5版本,在该环境中,Mysql的安装方法有很多种,下面我只讲我这次成功了的方法,作为一个记录,供大家参考,同时给自己做一个 ...

  2. Windows之MySQL安装教程

    MySQL安装说明 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,My ...

  3. 《⑨也懂系列:MinGW-w64安装教程》著名C/C++编译器GCC的Windows版本(MinGW-w64在安装的时候可以选择版本,有图,一步一步)

    发布日期 2016年10月31日 分类 教程 标签 编程.软件 前言<⑨也懂系列:MinGW-w64安装教程>这篇文章由 rsreland (http://rsreland.net)于 2 ...

  4. windowns环境下mysql 安装教程

    windowns环境下mysql 安装教程 一:这里以绿色版安装为例(解压就可以使用) 下载地址: 下载页面:https://dev.mysql.com/downloads/mysql/  2:点击 ...

  5. Docker的介绍与安装教程

    基于Windows系统下docker的介绍与安装教程以及更换docker镜像源教程 目录 基于Windows系统下docker的介绍与安装教程以及更换docker镜像源教程 Docker的核心概念 D ...

  6. 2021 MySQL安装教程(最新教程)- 含网盘下载

    大家好,我是 我玩亚索我会C.最近电脑重装系统了,然后就想着装个MySQL,由于很久没装过了,于是上网搜索了教程,但是发现现在MySQL安装和之前的不一样了,网上都是旧版的安装教程,所以我就做一篇新版 ...

  7. mySql 安装教程

    看了好久别人的文章,今天就开始自己写第一篇.希望给别人能提供帮助,也可以方便自己查阅. 前两天自己安装了mysql,感觉是比oracle好装多了. mysql安装有两种方式,一种是安装包安装方式,一种 ...

  8. Ubuntu server 安装及jdk+mysql安装教程

    Ubuntu server 安装教程 1.查找及下载Ubuntu镜像文件 可以在以下页面下载想要的版本,我这里选择19.04 server版的iso镜像文件: http://mirrors.163.c ...

  9. MySQL-配置环境变量及修改密码(附-mysql安装教程)

    MySQL-配置环境变量和修改密码 mysql的安装教程:链接:https://pan.baidu.com/s/1rrPT2X0yRF58kN8jZZx-Mg 密码:55dh 一. 闪退问题 1.1. ...

随机推荐

  1. <深圳千锋学习>day01

    2019.11.11     深圳千锋H5前端学习笔记

  2. linux4.1内核配置以及编译及千兆网卡dp83867网卡驱动移植

    一  内核配置编译 1首先解压内核 tar jxvf linux-at91-4.1.tar.bz2: 2下载编译链 在ubuntu命令行中输入sudo apt-get install gcc-arm- ...

  3. Scrapy进阶知识点总结(六)——中间件详解

    概述 查看scrapy官网的框架图,可以看出中间件处于几大主要组件之间,类似于生产流水线上的加工过程,将原料按照不同需求与功能加工成成品 其中4,5处于下载器与引擎之间的就是下载中间件,而spider ...

  4. mysql并发量过大造成 update语句更新错误

    mysql并发量过大造成 update语句更新错误 在同一字段的时候更新的时候 如果并发量太大 就会更新错误 这个时候只能用 swoole 消息队列更新

  5. Java nio 空轮询bug到底是什么

    编者注:Java nio 空轮询bug也就是Java nio在Linux系统下的epoll空轮询问题. epoll机制是Linux下一种高效的IO复用方式,相较于select和poll机制来说.其高效 ...

  6. 《计算机网络 自顶向下方法》 第6章 链路层和局域网 Part2

    待补充完善 Web 页面的请求历程 应用层     报文.主机 运输层     报文段. 网络层     数据报.路由器.IP 地址 链路层     以太网帧.交换机.MAC 地址 步骤 1)到 4) ...

  7. jquery ajax在 IE8/IE9 中无效

    你们是不是也曾经和我以为遇到过这样的情况呢,jquery ajax在 IE8/IE9 中无效获取不到数据呢,经过熬夜找到好的东西和你们分享一下就是jQuery-ajaxTransport-XDomai ...

  8. [RAM] FPGA的学习笔记——RAM

    1.RAM——随机存取存储器, 分为SRAM和DRAM. SRAM:存和取得速度快,操作简单.然而,成本高,很难做到很大.FPGA的片内存储器,就是一种SRAM,用来存放程序,以及程序执行过程中,产生 ...

  9. nyoj 163 Phone List(动态字典树<trie>) poj Phone List (静态字典树<trie>)

    Phone List 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 Given a list of phone numbers, determine if it i ...

  10. 航空概论(历年资料,引之百度文库,PS:未调格式,有点乱)

    航空航天尔雅 选择题1. 已经实现了<天方夜谭>中的飞毯设想.—— A——美国2. 地球到月球大约—— C 38 万公里3. 建立了航空史上第一条定期空中路线—— B——德国4. 对于孔明 ...