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. Docker系列之RabbitMQ安装部署教程

    Docker系列之RabbitMQ安装部署教程 因为学习RabbitMQ需要,需要安装RabbitMQ,网上找资料,RabbitMQ官方提供了window版.Linux版.Docker版的管理页面,为 ...

  2. Javaweb mysql安装教程

    把 mysql 驱动 放到 WEB-INF 里面的lib 文件夹中, =========================================== 转载他人的文章    http://www ...

  3. Windows使用msi安装MySQL安装教程

    Windows使用msi安装MySQL安装教程 下面为大家介绍利用为windows提供的二进制分发包(msi)安装MySQL的过程. 点击这个链接下载msi的MySQL文件. 下载好安装包:mysql ...

  4. centos7环境下MySQL安装教程

    Linux centos7环境下MySQL安装教程 作者:随缘相识-(志同道合) 字体:[增加 减小] 类型:转载 时间:2017-03-17 我要评论 这篇文章主要为大家详细介绍了Linux cen ...

  5. MySQL安装教程及配置环境变量(建议收藏)

    MySQL安装教程 下载安装: 官网下载地址:http://dev.mysql.com/downloads/mysql/ 选择适配并下载: 选择第一个 1.解压 2.把这个解压包放置自己的电脑环境目录 ...

  6. mysql安装教程 mac_Mac下MySQL安装配置教程

    本文实例为大家分享了Mac下MySQL安装教程,供大家参考,具体内容如下 首先需要下载 进入MySQL的下载界面(https://dev.mysql.com/downloads/mysql/),如果你 ...

  7. MySQL安装教程包含所有平台(图解),MySQL下载步骤详解(带安装教程)

    现在作为服务器的操作系统一般有两种,分别是 Windows Server 和 Linux,这里我们分别介绍在 Windows 下和 Linux 下安装 MySQL 的具体操作步骤. MySQL安装教程 ...

  8. 超详细MySQL安装教程(Windows)

    推荐自己写的MySQL专栏:MySQL相关安装教程与MySQL语法 本人前不久把电脑Win10 x64系统给重置了,阅读官方文档,正打算把MySQL下载安装的时候,萌生了专门为萌新写一篇MySQL安装 ...

  9. 【小树T系列3D打印机安装教程】

    小树T系列3D打印机安装教程 1. 小树简介

最新文章

  1. 人工智能科学家发现 “衰老时钟”,我们的生物钟可以倒转
  2. MVC 中的Model对象
  3. 为什么会有jsessionid,这个东东有什么用呢?
  4. VirtualBox安装Kali
  5. ---innerHTML---
  6. HTTP/3 未来可期?
  7. 【算法竞赛学习】数字中国创新大赛智慧海洋建设-Task1地理数据分析常用工具
  8. Heka:Go编写,来自Mozilla,高效、灵活的插件式数据挖掘工具(转)
  9. windbg入门之旅:(2)一个简单的integer divide-by-zero exception分析案例
  10. 【Strurts框架】第一节Action-通配符
  11. 太极图正确画法_八卦太极图的正确画法
  12. OSN 3500 SDH智能光传输系统整机与单板技术分享
  13. 『2021最新~解决』The push refers to a repository [docker.io/
  14. 书到用时方恨少,一大波JS开发工具函数来了
  15. 一个普通IT人的十年回顾
  16. python解常微分方程组
  17. 数据库系统概论 第七章设计数据库
  18. R语言——(五)、探索性数据分析
  19. [SWPU2019]Web3
  20. 2020 论文研究数据之 - 百度指数采集工具

热门文章

  1. eos采用的共识机制是_EOS共识机制
  2. (跨境电商)最新海关税率表(2019年1月1日实施)
  3. java并发编程 目录_Java并发编程实战的作品目录
  4. 2018/12/19 oracle-sql练习
  5. 绝缘电阻仪测试仪与绝缘耐压测试仪的区别
  6. 16位转10位c语言,10进制数转换为16位二进制数
  7. linux获取当前日期yyyymmdd,获取当前的日期
  8. js 免费可靠cdn地址(富文本编辑器tinymce的实践)
  9. 让SVG 自己动起来!SMIL animation动画详解
  10. 租服务器太贵?流程太麻烦?教你如何免费解决