Docker 安装mysql镜像,含离线

  • Docker 安装mysql镜像(含离线)
    • 准备mysql的Docker镜像(需要在有网的服务器中下载)
    • 将准备好tar导入到docker镜像
  • Docker启动mysql镜像并初始化数据库
    • Docker启动MySQL镜像
    • Docker初始化数据库
      • 有网配置(非必要,按需修改)
      • 无网配置(非必要,按需修改)

Docker 安装mysql镜像(含离线)

准备mysql的Docker镜像(需要在有网的服务器中下载)

  1. 使用有网的服务器下载好镜像

    docker pull mysql:5.7
    
  2. 保存下载好的镜像成tar

    docker images
    docker save imageid > mysql5.7
    ll
    

将准备好tar导入到docker镜像

  1. 将镜像上传到所需服务器(放在固定位置)

  2. 导入镜像

    docker load <mysql5.7
    

    注意名称,这里的mysql5.7和上面打包docker save imageid > mysql5.7的名称一致,本例未改名

  3. 查看导入的镜像,并重新命名镜像

    docker images
    docker tag imageid mysql:5.7
    

Docker启动mysql镜像并初始化数据库

Docker启动MySQL镜像

  1. 创建本地数据库目录、配置文件以及日志目录(方便进行容器数据卷挂载)

    mkdir -p /home/app/mysql/data /home/app/mysql/logs /home/app/mysql/conf
    
  2. 启动镜像

    docker run --name mysql -p 3306:3306 -v /home/app/mysql/data:/var/lib/mysql -v /home/app/mysql/conf:/etc/mysql/conf.d -v /home/app/mysql/logs:/var/log/mysql -e MYSQL_ROOT_PASSWORD=123456 -d eef0fab001e8
    

    -p 3306:3306 :端口映射,将宿主机3306端口与容器3306端口做映射
    格式:-p 宿主机端口:容器端口

    –name mysql : 指定容器名字为mysql,也可以不指定,不指定没有容器名字

    数据容器卷挂载
    -v /home/app/mysql/data:/var/lib/mysql :对宿主机数据库目录与容器数据库目录进行映射挂载
    -v /home/app/mysql/conf:/etc/mysql/conf.d:对宿主机数据库配置文件与容器数据库配置文件进行映射挂载
    -v /home/app/mysql/logs:/var/log/mysql:对宿主机数据库日志与容器数据库日志进行映射挂载
    -e MYSQL_ROOT_PASSWORD=123456 :配置mysql的root账号的密码为123456(可以根据需要自行修改密码)
    -d:后台执行
    eef0fab001e8 :镜像id,容器第一次启动要根据镜像来启动,所以镜像id必不可少。可以通过命令docker iamges查看镜像id

Docker初始化数据库

有网配置(非必要,按需修改)

  1. 进入到bash

    docker exec -it eef0fab001e8 bin/bash
    

    eef0fab001e8 :镜像id,容器第一次启动要根据镜像来启动,所以镜像id必不可少。可以通过命令docker iamges查看镜像id

  2. docker 安装vim(有网)

    apt-get update
    apt-get install vim
    
  3. 修改mysql的配置(非必要,按需修改)

    vi /etc/my.cnf
    

    修改的内容为:

    character-set-server=utf8
    max_connections = 5000
    log_bin_trust_function_creators=1
    lower_case_table_names = 1
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
    transaction_isolation = READ-COMMITTED
    group_concat_max_len = 102400
    

    退出 bash (2 种操作) 1)Ctrl + d 退出容器(也可直接输入:exit); 2)Ctrl + p + q 退出并在后台运行容器;

  4. 重启 docker 容器

    docker restart [容器名]
    

无网配置(非必要,按需修改)

  1. 进入到bash

    docker exec -it eef0fab001e8 bin/bash
    

    eef0fab001e8 :镜像id,容器第一次启动要根据镜像来启动,所以镜像id必不可少。可以通过命令docker iamges查看镜像id

  2. docker 配置my.cnf(非必要,按需修改)【直接拷贝,需重启】

    复制/root/mysql_db_back/下的my.cnf文件到容器中的etc目录下

    docker cp /root/mysql_db_back/my.cnf mysql:/etc
    

    重启 docker 容器

    docker restart [容器名]
    
  3. 检查参数配置

    SHOW VARIABLES WHERE variable_name IN (
    'log_bin_trust_function_creators',
    'transaction_isolation',
    'lower_case_table_names',
    'sql_mode',
    'character_set_server',
    'default_character_set',
    'innodb_large_prefix',
    'max_connections',
    'innodb_buffer_pool_size',
    'group_concat_max_len'
    );
    

Centos /Linux环境下利用Docker 安装mysql5.7镜像(含离线安装),启动mysql镜像并初始化数据库相关推荐

  1. 【 Linux学习】Linux环境下利用OpenSSL对大文件进行AES加解密

    一.背景 之前的几篇博客已经介绍了Gitlab如何备份恢复与迁移已经脚本监控过程等. git学习--> Gitlab如何进行备份恢复与迁移? http://blog.csdn.net/ouyan ...

  2. linux环境下用docker安装rabbitmq

    1.进入docker hub镜像 仓库地址:https://hub.docker.com/ 2.搜索rabbitMq,进入官方 的镜像可以,看到以下几种类型的镜像:我们选择带有"mangem ...

  3. Windows系统下使用Jenkins自动化发布.NET core程序到Linux平台下利用Docker快速启动

    准备工作: Windows安装Jenkins 官网自行下载 https://jenkins.io/ Linux服务器一台,建议使用VM虚拟机完成,系统版本建议Centos7系列 Linux安装Dock ...

  4. linux+手机+gps,Linux环境下利用GPS+蓝牙实现移动定位

    搞了一个下午终于把这个弄清楚了:查了下网络资料基本也没什么相关的,这里就自己写个和大家分享下吧.虽然在XP系统下实现起 搞了一个下午终于把这个弄清楚了:查了下网络资料基本也没什么相关的,这里就自己写个 ...

  5. 【Linux部署】Spring Boot 项目部署在Linux环境下的Docker容器内举例【任务调度系统 xxl-job 任务调度中心】(手动版)

    1.将SpringBoot项目打jar包 这里打包的是xxl-job任务调度系统的调度器. 2.编写Dockerfile FROM java:8 VOLUME /tmp ADD xxl-job-adm ...

  6. Linux环境下利用句柄恢复Oracle误删除的数据文件

    在误删除Oracle的数据文件后,如果未关闭数据库,文件句柄还没有释放,且被删除的数据文件占用的磁盘块未被复写,则可以利用句柄的方式来恢复数据文件.下面模拟恢复过程. (一)环境 OS版本:redha ...

  7. linux git2.8.0下载,Linux 环境下 jdk1.8 maven3.2.3 Git2.8.0 安装脚本

    # @Author: peizhouyu # @Date: 2018-09-07 14:24:11 # @Last Modified by: peizhouyu # @Last Modified ti ...

  8. Linux 环境下 jdk1.8 maven3.2.3 Git2.8.0 安装脚本

    2019独角兽企业重金招聘Python工程师标准>>> # @Author: peizhouyu # @Date: 2018-09-07 14:24:11 # @Last Modif ...

  9. 一分钟在Linux环境下创建一台SFTP服务器(含账户创建)

    FTP是比较常见的一种服务了,很多公司都会有可能使用到FTP服务器,本文将以最简洁的办法使用系统自带的ssh软件在1分钟内搭建一台使用方便的FTP服务器. SFTP是Secure File Trans ...

最新文章

  1. Java学习总结:33(System类)
  2. 如何快速融入团队(八)
  3. 用于WWW传输控制的是HTML,控制传输
  4. 北京内推 | 阿里云视频处理算法团队招聘视频处理算法实习生
  5. json文件读取并转换成为字典python
  6. @FindBy、@FindBys、@FindAll的区别
  7. java 管道流PipedInputStream,PipedInputStream和随机访问文件 RandomAccessFile
  8. 赛门铁克备份软件服务起不来_软件安全开发服务资质和信息系统灾难备份与恢复服务资质...
  9. gdb 收到SIGPIPE信号
  10. 安排计算机网络技术专业去电子厂专业对口吗,计算机网络技术专业好点的学校有哪些?...
  11. 《永不放弃-马云给创业者的24堂课》— 综合素质提升书籍
  12. 带有记忆的菲波那切数列
  13. (转)根据两点经纬度计算距离
  14. c语言课外读书笔记谭浩强,谭浩强C语言读书笔记
  15. 服务器XP系统打印机共享设置,windowsxp系统打印机共享设置方法介绍
  16. 创建MovieClip类
  17. C#判断线段是否相交
  18. 在64位总线下,安装了8G内存条,却显示可用内存不到8G的原因
  19. 浙政钉(专有钉钉)门户免登(超详细)
  20. 学计算机提升,【思想提升】学计算机,就是做计算机的吗?

热门文章

  1. Apache POI 和 easyExcel
  2. imx6平台设备树详解
  3. 2017年8月9日 星期三 --出埃及记 Exodus 28:31
  4. 记录2021的一年(找实习+工作的一年)
  5. anubis质检结果xtr文件详解
  6. 4款宝藏国产软件,装了就舍不得卸载,白嫖必备
  7. 微信小程序多图上传/朋友圈传图效果【附完整源码】
  8. 数据分析36计(15):这个序贯检验方法让 A/B 实验节约一半样本量
  9. 圆弧与直线相切画法_机械制图中的圆弧连接的画法
  10. 大数据时代下“被直播”问题现状调研报告