前言

docker安装mysql环境非常方便,简单的几步操作就可以了

拉取mysql镜像

先拉取mysql的镜像,可以在docker的镜像仓库找到不同TAG标签的版本https://hub.docker.com/_/mysql?tab=tags
我这里选择mysql:5.7标签

[root@yoyo ~]# docker pull mysql:5.75.7: Pulling from library/mysqlfc7181108d40: Already exists 787a24c80112: Already exists a08cb039d3cd: Already exists 4f7d35eb5394: Already exists 5aa21f895d95: Already exists a742e211b7a2: Pull complete 0163805ad937: Pull complete 62d0ebcbfc71: Pull complete 559856d01c93: Pull complete c849d5f46e83: Pull complete f114c210789a: Pull complete Digest: sha256:c3594c6528b31c6222ba426d836600abd45f554d078ef661d3c882604c70ad0aStatus: Downloaded newer image for mysql:5.7

docker images查看已经下载成功

REPOSITORY                 TAG                 IMAGE ID            CREATED             SIZEcentos                     v7.5                254d4dfe9df7        3 days ago          200MBmysql                      5.7                 a1aa4f76fab9        2 weeks ago         373MBcentos/python-36-centos7   latest              b8d15efaa8ec        2 months ago        651MBcentos                     centos7.5.1804      cf49811e3cdb        3 months ago        200MBubuntu                     15.10               9b9cb95443b5        2 years ago         137MBtraining/webapp            latest              6fae60ef3446        4 years ago         349MB[root@yoyo ~]#

配置mysql

创建mysql目录,用于存放mysql相关配置及数据

  • mkdir :

    如果存在上级目录不存在的情况,会无法创建下级目录, 会提出ERROR

  • mkdir -p :

    递归创建目录,即使上级目录不存在,会按目录层级自动创建目录

  • ~ : ”/“是根目录,”~“是家目录。

    Linux存储是以挂载的方式,相当于是树状的,源头就是”/“,也就是根目录。

    而每个用户都有”家“目录,也就是用户的个人目录,比如root用户的”家“目录就是/root,普通用户a的家目录就是/home/a

mkdir -p ~/yoyo/mysql/conf ~/yoyo/mysql/data ~/yoyo/mysql/logs

创建完成后,在当前用户的home目录(root用户在root目录),会有三个文件夹

[root@yoyo ~]# mkdir -p ~/yoyo/mysql/conf ~/yoyo/mysql/data ~/yoyo/mysql/logs[root@yoyo mysql]# ll ~/yoyo/mysqltotal 12drwxr-xr-x 2 root root 4096 Jun 30 10:31 confdrwxr-xr-x 2 root root 4096 Jun 30 10:31 datadrwxr-xr-x 2 root root 4096 Jun 30 10:31 logs

运行mysql容器

docker run -p 3309:3306 —name yoyomysql -v ~/yoyo/mysql/conf:/etc/mysql/conf.d -v ~/yoyo/mysql/logs:/logs -v ~/yoyo/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

命令说明:

  • —name  重命名yoyomysql

  • -p 3309:3306:

    将容器的 3306 端口映射到主机的 3309 端口。

  • -v -v ~/yoyo/mysql/conf:/etc/mysql/conf.d:

    将主机~/yoyo/mysql/conf 挂载到容器的 /etc/mysql/my.cnf。

  • -v ~/yoyo/mysql/logs:/logs:

    将主机~/yoyo/mysql 目录挂载到容器的 /logs。

  • -v ~/yoyo/mysql/data:/var/lib/mysql :

    将主机~/yoyo/mysql/data目录挂载到容器的 /var/lib/mysql 。

  • -e MYSQL_ROOT_PASSWORD=123456:

    初始化 root 用户的密码。

  • -d 挂后台运行

启动完成后,查看运行状态

[root@yoyo mysql]# docker run -p 3308:3306 --name yoyomysql -v ~/yoyo/mysql/conf:/etc/mysql/conf.d -v ~/yoyo/mysql/logs:/logs -v ~/yoyo/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7581137afbd3ba22dc02bf89d3ec1afb6e51d55eed0d99a3a4a979bdee8d5de4a[root@yoyo ~]# docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES581137afbd3b        mysql:5.7           "docker-entrypoint.s…"   4 minutes ago       Up 4 minutes       33060/tcp, 0.0.0.0:3309->3306/tcp   yoyomysql

查看~/yoyo/mysql/data目录会看到有数据

[root@yoyo ~]# ll ~/yoyo/mysql/data/total 188476-rw-r----- 1 polkitd ssh_keys       56 Jun 30 10:38 auto.cnf-rw------- 1 polkitd ssh_keys     1679 Jun 30 10:38 ca-key.pem-rw-r--r-- 1 polkitd ssh_keys     1107 Jun 30 10:38 ca.pem-rw-r--r-- 1 polkitd ssh_keys     1107 Jun 30 10:38 client-cert.pem-rw------- 1 polkitd ssh_keys     1675 Jun 30 10:38 client-key.pem-rw-r----- 1 polkitd ssh_keys     1340 Jun 30 10:38 ib_buffer_pool-rw-r----- 1 polkitd ssh_keys 79691776 Jun 30 10:38 ibdata1-rw-r----- 1 polkitd ssh_keys 50331648 Jun 30 10:38 ib_logfile0-rw-r----- 1 polkitd ssh_keys 50331648 Jun 30 10:38 ib_logfile1-rw-r----- 1 polkitd ssh_keys 12582912 Jun 30 10:38 ibtmp1drwxr-x--- 2 polkitd ssh_keys     4096 Jun 30 10:38 mysqldrwxr-x--- 2 polkitd ssh_keys     4096 Jun 30 10:38 performance_schema-rw------- 1 polkitd ssh_keys     1679 Jun 30 10:38 private_key.pem-rw-r--r-- 1 polkitd ssh_keys      451 Jun 30 10:38 public_key.pem-rw-r--r-- 1 polkitd ssh_keys     1107 Jun 30 10:38 server-cert.pem-rw------- 1 polkitd ssh_keys     1675 Jun 30 10:38 server-key.pemdrwxr-x--- 2 polkitd ssh_keys    12288 Jun 30 10:38 sys

进入容器bash

输入docker exec -it mysql bash进入容器bash,接着输入mysql -uroot -p输入root用户密码123456进入mysql

[root@yoyo data]# docker exec -i -t yoyomysql bashroot@581137afbd3b:/# mysql -uroot -pEnter password: Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 4Server version: 5.7.26 MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

进入mysql之后所有指令结尾都需要 ;

  • show databases; 查看所有的库

  • use 某个数据库, 如 use mysql;

  • select 查询语句;

mysql> show databases;+--------------------+| Database           |+--------------------+| information_schema || mysql              || performance_schema || sys                |+--------------------+4 rows in set (0.00 sec)

mysql> use mysql;Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -A

Database changedmysql> select host, user from user;+-----------+---------------+| host      | user          |+-----------+---------------+| %         | root          || localhost | mysql.session || localhost | mysql.sys     || localhost | root          |+-----------+---------------+4 rows in set (0.00 sec)

mysql> exitByeroot@581137afbd3b:/# exitexit

退出mysql和容器用exit

连接mysql测试

第9期《python3接口自动化测试》课程,6月29号开学!
主讲老师:上海-悠悠
上课方式:QQ群视频在线教学
本期上课时间:6月29号-7月28号,每周六、周日晚上20:30-22:30
课表详情:https://www.cnblogs.com/yoyoketang/p/11030218.html
课表详情,点左下角[阅读原文]

docker 安装mysql_docker学习4docker安装mysql环境相关推荐

  1. mysql的安装版本有无开发版_moodle 2.0.2 安装图文教程 2——PHP Mysql环境搭建和moodle安装 - 乔木的日志 - ICT教育 - 中小学信息技术教育和教育信息化网站...

    moodle 2.0.2 安装图文教程 2--PHP+Mysql环境搭建和moodle安装 热度 6已有 211 次阅读 2011-3-29 16:49 ||关键词:moodle 2 图文安装教程 p ...

  2. docker学习4-docker安装mysql环境

    前言 docker安装mysql环境非常方便,简单的几步操作就可以了 拉取mysql镜像 先拉取mysql的镜像,可以在docker的镜像仓库找到不同TAG标签的版本https://hub.docke ...

  3. PHP开发学习-Apache+PHP+MySQL环境搭建

    我现在开始php的学习之旅啦! 入门:开发环境搭建 组件版本: apache2.2.22 下载地址:http://httpd.apache.org/ php5.4.11 下载地址:http://win ...

  4. python pyplot安装_Python学习-windows安装Python以及matplotlib.pyplot包

    引文: Python自带了许多的库文件,其中matplotlib可以做出类似于MATLAB和R语言一样绘制出很好的图形功能,下面介绍下怎么安装这个包,因为自己安装的时候很多地方都出错了. 环境: Wi ...

  5. gitlab 安装_Linux学习14CentOS安装gitlab环境

    前言 在学习Gitlab的环境搭建之前,首先需要了解Git,Gitlab,GitHub他们三者之间的关系 Git 它是一个源代码版本控制系统,可让您在本地跟踪更改并从远程资源推送或提取更改. GitH ...

  6. MySQL安装使用学习教程,mysql数据库入门的不二之选

    MySQL是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一. ...

  7. 系统已有MYSQL环境,如何安装宝塔面板

    最近一直想搞一个在线博客网站,把代码部署到服务器. 下载己经下载了宝塔的.exe文件,安装提示系统已经存在MYSQL环境,请用纯净系统安装. 因为我以前做java的,已经装了,现在把它卸载即可. WI ...

  8. dockerfile源码安装mysql_docker容器详解五: dockerfile实现tomcat环境以及源码安装mysql...

    tomcat 上一节讲到了dockerfile的基础,这一次咱们来作一个小的练习 首先要了解tomcat安装的整个过程 首先搭建 jdk环境: 下载jdk包,解压以后添加环境变量 而后搭建tomcat ...

  9. docker二进制安装mysql_Docker搭建MySQL读写分离主从模式 分布式数据库中间件Mycat分库分表应用...

    一.MySQL读写分离主从模式 1. 下载镜像 docker pull mysql 当前最新版本:mysql Ver 8.0.19 for Linux on x86_64 (MySQL Communi ...

最新文章

  1. PowerShell自动删除过期数据
  2. postman上传图片时已经添加cookie,但仍显示未登陆
  3. C++算法一:交换算法
  4. NASM汇编语言与计算机系统13-段的定义/vstart和align语法
  5. 基于Linux的集群系统(五) Linux集群系统的实现
  6. 美赛整理之Matlab的工程数学计算学习笔记(高等数学)
  7. FISCO BCOS(九)——— WeBase的节点前置服务
  8. 文件复制 详解(C++)
  9. 知乎网软件测试和识,扩容检测工具_闪迪东芝内存卡_金士顿内存卡 知乎
  10. (八)Mybatis当中#{}常用属性的用法
  11. 金蝶EAS,KSQL,执行数据库方言
  12. Android高仿微信头像裁剪
  13. Linux比较重要命令使用总结
  14. python处理pdf文件
  15. Python wind导入数据问题总结
  16. 网址打包(详细图文教程!) 使用HBuilder将网址打包成app
  17. 移动端tab切换时下划线的滑动效果
  18. LeetCode T36 Valid Sudoku
  19. 国内外火控计算机发展水平,基于国产软硬件平台的火控计算机
  20. 星座夫妻(真的很准)

热门文章

  1. 角逐同城货运,快狗打车抢跑上市
  2. 突破冰箱局限!海尔智家AWE发布美食物联生态平台
  3. 高端第一后,卡萨帝又将靠场景化引领冰箱行业
  4. 看似火热的民宿,实则凉透半边天
  5. C语言程序设计 练习1-13
  6. python ip动态代理_Python 爬虫设置动态代理
  7. python输入文字、成为字典_Python 字典(Dictionary)操作详解
  8. CTF-Web-常用伪协议用法:
  9. python从字符串解析方法名
  10. Python的__getattribute__ vs __getattr__的妙用