最近实在是忙成狗,其他的内容等稍微闲一点了一起更新。

这篇主要是讲docker版的mysql的使用和配置信息。因为实习公司需要搞一个docker做测试环境用,还需要包括基本的依赖。最重要的是,因为这个docker是作为jenkins的slave使用的,所以有可能不能在启动的时候加参数。这就导致我得把docker版的mysql的整个使用和配置详细过一遍,看看是否有代替启动参数的设置方法。

文中涉及到的mysql的基本信息见以下链接:

https://hub.docker.com/r/mysql/mysql-server/

https://github.com/mysql/mysql-docker

文章省略了docker的安装。到官网安一下就好了。

那么林可死大特。

1. 常规的基本docker版mysql的使用(docker的基本操作):

下载(community版):

docker pull mysql/mysql-server:tag

这里的tag是指mysql的版本号,比如5.5~5.7,8.0,latest。

docker images

这个是用来查看当前的镜像的清单。

docker run --name=mysql1 -d mysql/mysql-server:tag

接下来就是运行镜像,一个最基本的运行语句大概长这个样子。

--name制定了运行该镜像的容器(container)的名称。如果不声明的话会随机生成一个。

接着是镜像的名字。

-d是指明镜像的运行是扔在后台的。

docker ps

可以用这个语句来查看当前的image的运行情况。

整个流程简单来说,就是:pull镜像,run镜像,ps看看镜像是不是起来了。

docker logs mysql1

logs加上容器的名称,可以看这个容器在运行镜像时产生的日志信息。如果ps看到了镜像没有正常运行,就可以logs检查一下。

docker exec -it mysql1 mysql -uroot -p

exec就是在镜像中执行后面的操作,比如上面就是执行了mysql -uroot -p。

docker exec -it mysql1 bash 

为了方便在镜像中执行bash命令,也可以执行这样的命令来开一个bash。

docker stop mysql1

这样可以停止container的运行。想删除container首先要停止container。想删除image首先要删除container。总之是一环扣一环的。

2. docker版mysql和普通版mysql的区别

Docker images for MySQL are optimized for code size, which means they only include crucial components that are expected to be relevant for the majority of users who run MySQL instances in Docker containers.

按官网的说法,docker版的mysql只包含了必要的部分。清单如下:

/usr/bin/my_print_defaults

/usr/bin/mysql

/usr/bin/mysql_config

/usr/bin/mysql_install_db

/usr/bin/mysql_tzinfo_to_sql

/usr/bin/mysql_upgrade

/usr/bin/mysqladmin

/usr/bin/mysqlcheck

/usr/bin/mysqldump

/usr/bin/mysqlpump

/usr/sbin/mysqld

3. docker版mysql的使用

前面提到了查看log的方法。docker版mysql的默认配置是:第一次的root密码是随机生成的。所以想用root账户登陆,首先要查看随机生成的密码。

shell> docker logs mysql1 2>&1 | grep GENERATED
GENERATED ROOT PASSWORD: Axegh3kAJyDLaRuBemecis&EShOs

然后就可以-uroot -p登录了。

登录之后的第一件事,就是改root密码。

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';

其他的就跟本地运行mysql差不多了。

注意的一点是,我们刚刚run docker的命令中,并没有把docker中的端口和本机的端口进行映射。所以虽然mysql虽然启动了,但是不能通过3306或者其他端口进行访问。

想跟在本机一样的话,就要在启动docker容器的时候对docker和本机的端口进行映射。

docker run -p ip:hostPort:containerPort

docker版mysql的使用和配置(1)——docker的基本操作的更多相关文章

  1. docker版mysql的使用和配置(2)——docker版mysql的dockerfile

    既然目标是定制满足自己需要的dockerfile,那么就来看看mysql的dockerfile长什么样. dockerfile选择的是 https://github.com/mysql/mysql-d ...

  2. 【Docker】:使用docker安装mysql,挂载外部配置和数据

    普通安装 1.下载镜像,mysql 5.7 docker pull mysql:5.7 2.创建mysql容器,并后台启动 docker run -d -p 3306:3306 -e MYSQL_US ...

  3. Docker的MySQL镜像, 实行数据,配置信息,日志持久化

    Docker的MySQL8镜像, 实行数据持久化 使用Docker的MySQL8.0.17实例化一个容器之后需要对其进行数据持久化操作, 使用 docker docker run -p 7797:33 ...

  4. 使用Docker安装mysql,挂载外部配置和数据

    .挂载外部配置和数据安装 mkdir /opt mkdir /opt/mysql mkdir /opt/mysql/conf.d mkdir /opt/mysql/data/ 创建my.cnf配置文件 ...

  5. docker中MySQL镜像数据,日志,配置持久化

    Docker的MySQL8镜像, 实行数据持久化 version: '3.1' services: mysql-itoken-service-admin: restart: always image: ...

  6. docker创建mysql容器,并挂载数据+配置

    新建:/my/mysql/my.cnf (准备挂载配置文件用) 将以下内容拷贝进去(或者启动一个docker的mysql,并且把/etc/mysql/my.cnf中的内容拷贝出来) # Copyrig ...

  7. Docker搭建Mysql容器

    转载自:http://blog.csdn.net/Mungo/article/details/78521832?locationNum=9&fps=1 本文介绍如何使用docker迅速搭建My ...

  8. 使用docker安装mysql和redis

    本文介绍在linux下使用docker安装mysql和redis. 原文地址:代码汇个人博客 http://www.codehui.net/info/59.html 测试环境:centos7.6,do ...

  9. Mysql和mongo安装配置

    mysql配置 1.下载镜像 docker pull mysql/mysql-server 2.运行容器 docker run -d -p 3306:3306 --name [Name] [Image ...

随机推荐

  1. 使用 SOS 对 Linux 中运行的 .NET Core 进行问题诊断

    目录 说明 准备一个方便的学习环境 2.x 配置内容 3.x 配置内容 工具介绍 lldb sos plugin 1. attach 到进程上进行调试 2. 分析core dump文件 SOS 案例分 ...

  2. 多线程,线程类三种方式,线程调度,线程同步,死锁,线程间的通信,阻塞队列,wait和sleep区别?

    重难点梳理 知识点梳理 学习目标 1.能够知道什么是进程什么是线程(进程和线程的概述,多进程和多线程的意义) 2.能够掌握线程常见API的使用 3.能够理解什么是线程安全问题 4.能够知道什么是锁 5 ...

  3. 别再费劲去找后台的前端框架了,2021 年就用 Fantastic-admin 吧

    前言 你知道光是基于 Vue 的后台框架在 Github 上有多少个仓库么? 如果你搜索 vue admin 会得到 13120 个仓库,如果用 vue 后台 会得到 7596 个仓库,如果把两者结合 ...

  4. 不想加班开发管理后台了,试试这个 Java 开源项目吧!

    本文适合有 Java 基础并了解 SpringBoot 框架的同学 本文作者:HelloGitHub-嘉文 这里是 HelloGitHub 推出的<讲解开源项目>系列,今天给大家带来一款开 ...

  5. Hbase性能调优(二)

    一.HBase关键参数配置指导 如果同时存在读和写的操作,这两种操作的性能会相互影响.如果写入导致的flush和Compaction操作频繁发生,会占用大量的磁盘IO操作,从而影响读取的性能.如果写入 ...

  6. cornerstoneTools 作用,用法,api使用心得

    一.cornerstoneTools的用途 1.作用可以响应一些事件,例如鼠标按下的事件,鼠标滚轮的事件或按键或触摸事件 2.可以对视口进行缩放平移 3.可以在图像上绘制图形 4.可以在图像上绘制文本 ...

  7. asp.net core 学习笔记

    项目整体感知 项目初始化 项目启动流程: Program.cs Microsoft.Extensions.Hosting.Host => CreateHostBuilder().UseStart ...

  8. DevOps,CI,CD,自动化简单介绍

    前言: 随着企业应用的不断迭代,不断扩大,应用的发布发布可能涉及多个团队,如pc端,手机端,小程序端等等.应用发布也就成为了一项高风险,高压力的超过过程,以及应用的开发迭代的沟通,测试成本也大大的变得 ...

  9. hugo建站 | 我的第一个博客网站

    前言 博客地址 - https://billie52707.cn 1. 建博客的初衷? 2020那一年,八月的第一天,我还是像往常一样打开我的域名网站,本以为还是会像以前一样显示每日一图的界面,结果出 ...

  10. (二)数据源处理5-excel数据转换实战(上)

    把excel_oper02.py 里面实现的:通过字典的方式获取所有excel数据.放进utils: ️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️️ utils: def get_al ...