当前位置: 首页 > news >正文

Docker搭建mysql性能测试环境

OpenEuler使用Docker搭建mysql性能测试环境

  • 一、安装Docker
  • 二、docker安装mysql
  • 三、测试mysql连接

一、安装Docker

  1. 建立源文件
    vim  /etc/yum.repos.d/docker-ce.repo
    
    增加内容
    [docker-ce-stable]
    name=Docker CE Stable - $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/$basearch/stable
    enabled=1
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-stable-debuginfo]
    name=Docker CE Stable - Debuginfo $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/debug-$basearch/stable
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-stable-source]
    name=Docker CE Stable - Sources
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/source/stable
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-test]
    name=Docker CE Test - $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/$basearch/test
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-test-debuginfo]
    name=Docker CE Test - Debuginfo $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/debug-$basearch/test
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-test-source]
    name=Docker CE Test - Sources
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/source/test
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-nightly]
    name=Docker CE Nightly - $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/$basearch/nightly
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-nightly-debuginfo]
    name=Docker CE Nightly - Debuginfo $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/debug-$basearch/nightly
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg[docker-ce-nightly-source]
    name=Docker CE Nightly - Sources
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/source/nightly
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg	 
    
  2. 安装Docker
  • 安装docker(docker-ce 社区版 而ee是企业版)

    yum install -y docker-ce docker-ce-cli containerd.io
    
  • 配置国内的镜像源

    vim /etc/docker/daemon.json
    
  • 进行编辑(json格式)

    {"registry-mirrors": ["http://hub-mirror.c.163.com","https://registry.docker-cn.com","https://docker.mirrors.ustc.edu.cn"]
    }
    
  • 启动,并设置为开机自启(因为你加了日志生成路径,可能会出错,不要慌!!可以查看后面解决方法)

    (1) 刷新daemon.json文件

    systemctl daemon-reload
    

    (2) 启动Docker服务

    systemctl enable --now docker
    systemctl start docker		
    
  • 重启

    systemctl restart docker
    
  • 设置开机自动启动

    systemctl enable docker
    
  • 测试

    docker run hello-world
    
  • 查看docker 当前的状态

    systemctl status docker
    
  • 查看具体的错误信息

    systemctl status docker -l
    systemctl status docker.service
    
  • 查看docker的版本信息

    docker version
    

二、docker安装mysql

  1. 拉取MySQL镜像
    在进行MySQL容器的部署之前,需要先拉取MySQL镜像。可以通过以下命令拉取官方提供的MySQL镜像:

    docker pull mysql
    
  2. 创建MySQL容器
    先创建一个简单的mysql容器实例

    docker run -p 3306:3306 --name  sample-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest
    

    复制里面的/etc/mysql文件夹

    docker cp sample-mysql:/etc/mysql/. /data/mysql/conf
    

    删除掉临时容器

    docker rm -f sample-mysql
    

    启动完整的容器命令

    docker run
    -p <映射端口>:<服务端口>
    –name mysql
    -e MYSQL_ROOT_PASSWORD=123456
    -v /data/mysql/log:/var/log/mysql
    -v /data/mysql/data:/var/lib/mysql
    -v /data/mysql/conf:/etc/mysql
    –privileged=true
    -d mysql:xxx(docker拉取的mysql的镜像版本号)

    示例:
    自定义端口启动完整命令

    docker run -p 13306:3306 --name mysql01 --restart=always --privileged=true \
    -v /data/mysql/log:/var/log/mysql \
    -v /data/mysql/data:/var/lib/mysql \
    -v /data/mysql/conf:/etc/mysql \
    -v /etc/localtime:/etc/localtime:ro \
    -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest
    

    启动命令解释:

    -p 3306:3306:指定宿主机端口与容器端口映射关系
    –name mysql:创建的容器名称
    –restart=always:总是跟随docker启动
    –privileged=true:获取宿主机root权限
    -v /usr/local/mysql/log:/var/log/mysql:映射日志目录,宿主机:容器
    -v /usr/local/mysql/data:/var/lib/mysql:映射数据目录,宿主机:容器
    -v /usr/local/mysql/conf:/etc/mysql:映射配置目录,宿主机:容器
    -v /etc/localtime:/etc/localtime:ro:让容器的时钟与宿主机时钟同步,避免时区的问题,ro是read only的意思,就是只读。
    -e MYSQL_ROOT_PASSWORD=123456:指定mysql环境变量,root用户的密码为123456
    -d mysql:latest:后台运行mysql容器,版本是latest。

    命令执行之后如下图:
    在这里插入图片描述

三、测试mysql连接

使用数据库连接工具测试mysql是否能够连接

mycli -h 127.0.0.1 -P 13306 -u root -p 123456

连接成功结果如下图:
在这里插入图片描述

相关文章:

  • 授人以渔 选购篇十四:电动车(电动自行车)选购要点
  • 重生之while在鸣潮学习HTML标签
  • 【ai】pycharm设置软件仓库编译运行基于langchain的chatpdf
  • 疯狂“造人”!美国两党共推新法案,5年培养100万AI及量子人才
  • 推荐3款好用的AI智能写作工具
  • 【算法专题】双指针算法之 移动零
  • Qt for android 串口库使用
  • 国产32位MCU的发展与机遇
  • 【数组】Leetcode 57. 插入区间【中等】
  • 【计算机视觉(2)】
  • 【LeetCode算法】第83题:删除排序链表中的重复元素
  • 一文搞透常见的Python编码陷阱(上)(分析+案例)
  • 如何判断一个对象是否已经被回收?
  • C++ 常用UI库
  • 如何消除*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS。如何消除函数未使用的警告
  • [js高手之路]搞清楚面向对象,必须要理解对象在创建过程中的内存表示
  • 【划重点】MySQL技术内幕:InnoDB存储引擎
  • HashMap ConcurrentHashMap
  • mongo索引构建
  • socket.io+express实现聊天室的思考(三)
  • Vue.js-Day01
  • 技术胖1-4季视频复习— (看视频笔记)
  • 老板让我十分钟上手nx-admin
  • 批量截取pdf文件
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 世界上最简单的无等待算法(getAndIncrement)
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • LevelDB 入门 —— 全面了解 LevelDB 的功能特性
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • $jQuery 重写Alert样式方法
  • (31)对象的克隆
  • (HAL)STM32F103C6T8——软件模拟I2C驱动0.96寸OLED屏幕
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (每日持续更新)jdk api之FileFilter基础、应用、实战
  • (三)Honghu Cloud云架构一定时调度平台
  • (原創) 如何讓IE7按第二次Ctrl + Tab時,回到原來的索引標籤? (Web) (IE) (OS) (Windows)...
  • (转) 深度模型优化性能 调参
  • .cn根服务器被攻击之后
  • .md即markdown文件的基本常用编写语法
  • .NET 动态调用WebService + WSE + UsernameToken
  • .NET建议使用的大小写命名原则
  • .NET轻量级ORM组件Dapper葵花宝典
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • @cacheable 是否缓存成功_让我们来学习学习SpringCache分布式缓存,为什么用?
  • @property python知乎_Python3基础之:property
  • [ web基础篇 ] Burp Suite 爆破 Basic 认证密码
  • [Android] Implementation vs API dependency
  • [BUAA软工]第一次博客作业---阅读《构建之法》
  • [bzoj 3534][Sdoi2014] 重建
  • [c++] 什么是平凡类型,标准布局类型,POD类型,聚合体
  • [C++提高编程](三):STL初识
  • [Cocoa]iOS 开发者账户,联机调试,发布应用事宜
  • [Deep Learning] 神经网络基础
  • [HNOI2008]玩具装箱toy