《Docker系列》Docker安装MySQL 5.7

news2025/2/3 6:53:22

在这里插入图片描述

Docker安装MySQL 5.7

一、docker拉取MySQL 5.7镜像

  • docker pull mysql

    拉取最新MySQL

  • docker pull mysql:5.7

    拉取指定版本MySQL

1 拉取mysql 5.7镜像

[root@zxy_master ~]# docker pull mysql:5.7
5.7: Pulling from library/mysql
d26998a7c52d: Pull complete
4a9d8a3567e3: Pull complete
bfee1f0f349e: Pull complete
71ff8dfb9b12: Pull complete
bf56cbebc916: Pull complete
2e747e5e37d7: Pull complete
711a06e512da: Pull complete
3288d68e4e9e: Pull complete
49271f2d6d15: Pull complete
f782f6cac69c: Pull complete
701dea355691: Pull complete
Digest: sha256:6306f106a056e24b3a2582a59a4c84cd199907f826eff27df36406f227cd9a7d
Status: Downloaded newer image for mysql:5.7
docker.io/library/mysql:5.7

2 检查镜像

[root@zxy_master ~]# docker images
REPOSITORY                                             TAG        IMAGE ID       CREATED         SIZE
mysql                                                  5.7        d410f4167eea   13 days ago     495MB

二、创建MySQL容器

1 创建容器

docker run -p 33061:3306 --name mysql01 \
-v /zxy/apps/docker_mysql/mysql01/data:/var/lib/mysql \
-v /zxy/apps/docker_mysql/mysql01/conf:/etc/mysql/conf.d \
-v /zxy/apps/docker_mysql/mysql01/log:/var/log/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7
  • -p 33061:3306

    左边是服务器端口,右边是容器内端口

  • --name mysql01

    容器名称

  • -v /zxy/apps/docker_mysql/mysql01/log:/var/log/mysql

    指定日志文件目录,左边是服务器目录,右边是容器内目录

  • -v /zxy/apps/docker_mysql/mysql01/data:/var/lib/mysql

    指定数据文件目录,左边是服务器目录,右边是容器内目录

  • -v /zxy/apps/docker_mysql/mysql01/conf:/etc/mysql/conf.d

    指定配置文件目录,左边是服务器目录,右边是容器内目录

  • -e MYSQL_ROOT_PASSWORD=123456

    指定root用户登录密码

[root@zxy_master apps]# docker run -p 33061:3306 --name mysql01 \
> -v /zxy/apps/docker_mysql/mysql01/conf:/etc/mysql/conf.d \
> -v /zxy/apps/docker_mysql/mysql01/data:/var/lib/mysql \
> -v /zxy/apps/docker_mysql/mysql01/log:/var/log/mysql \
> -e MYSQL_ROOT_PASSWORD=123456 \
> -d mysql:5.7
faf2312fd62ad4ebe05ba2cffa9917b47417cfad1f8175912e1e0bc6e089986c

2 检查容器启动状态

[root@zxy_master apps]# docker ps
CONTAINER ID   IMAGE                                                  COMMAND                  CREATED         STATUS         PORTS                                                    NAMES
faf2312fd62a   mysql:5.7                                              "docker-entrypoint.s…"   3 seconds ago   Up 2 seconds   33060/tcp, 0.0.0.0:33061->3306/tcp, :::33061->3306/tcp   mysql01

3 进入容器,登录MySQL

3.1 登陆方式一:容器内登录

[root@zxy_master etc]# docker exec -it faf2312fd62a /bin/bash
bash-4.2# mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.40 MySQL Community Server (GPL)

Copyright (c) 2000, 2022, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

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

mysql> 

3.2 登录方式二:主机内远程登陆

  • -u

    指定用户名

  • -p

    小写p,指定密码

  • -h

    指定主机,127.0.0.1代表本机

  • -P

    指定端口,创建容器时MySQL的外部端口

[root@zxy_master ~]# mysql -uroot -p123456 -h127.0.0.1 -P33061
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.40 MySQL Community Server (GPL)

Copyright (c) 2000, 2022, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

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

mysql> 

3.2 登陆方式三:外部远程登陆

开放防火墙的33061端口

在这里插入图片描述

4 【拓展】查看/修改容器内my.cnf配置文件

4.1 find查找my.cnf

[root@zxy_master etc]# docker exec -it faf2312fd62a /bin/bash
bash-4.2# find / -name 'my.cnf'
/etc/my.cnf

4.2 查看my.cnf

bash-4.2# cat my.cnf
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
skip-host-cache
skip-name-resolve
datadir=/var/lib/mysql
socket=/var/run/mysqld/mysqld.sock
secure-file-priv=/var/lib/mysql-files
user=mysql

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

#log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[client]
socket=/var/run/mysqld/mysqld.sock

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

4.2 修改my.cnf,需要下载vi

可以看到直接使用vi命令修改my.cnf是不行的。

bash-4.2# cd /etc/
bash-4.2# vi my.cnf
bash: vi: command not found

先安装vi命令,即可以修改

bash-4.2# yum -y install vi
Loaded plugins: ovl
mysql-tools-community                                                                                                             | 2.6 kB  00:00:00
mysql5.7-server-minimal                                                                                                           | 2.6 kB  00:00:00
ol7_developer_EPEL                                                                                                                | 3.6 kB  00:00:00
ol7_latest                                                                                                                        | 3.6 kB  00:00:00
......
--> Running transaction check
---> Package vim-minimal.x86_64 2:7.4.629-8.0.1.el7_9 will be installed
--> Finished Dependency Resolution
......
Installed:
  vim-minimal.x86_64 2:7.4.629-8.0.1.el7_9

Complete!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/103843.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaWeb之Servelt学习

1.Servlet 概念:运行在服务端的小程序 Servlet就是一个接口,定义了java类被浏览器访问到(tomcat识别)的规则 将来我们自定义一个类,实现Servlet接口,复写方法 1.1快速入门 1.创建javaEE项目 2.定义类实…

DFS——连通性和搜索顺序(回溯)

文章目录概述连通性问题模板思考迷宫红与黑搜索顺序(回溯)模板思考马走日单词接龙分成互质组总结概述 定义 在深度优先搜索中,对于最新发现的顶点,如果它还有以此为顶点而未探测到的边,就沿此边继续探测下去,当顶点v的所有边都已…

JavaScript刷LeetCode拿offer-滑动窗口

一、前言 《JavaScript刷LeetCode拿offer-双指针技巧》中,简单地介绍了双指针技巧相比较单指针的优点,以及结合 Easy 难度的题目带大家进一步了解双指针的应用。 进入 Medium 难度之后,解题的关键在于如何构造双指针以及确定指针移动的规则…

从 0 开始学 Python 自动化测试开发(二):环境搭建

本文是「从 0 开始学 Python 自动化测试开发」专题系列文章第二篇 —— 环境搭建篇,适合零基础入门的同学。没有阅读过上一篇的同学,请戳主页看上一篇噢。作者方程老师,是前某跨国通信公司高级测试经理,目前为某互联网名企资深测试…

常见管理网络的net命令

目录1 简介2 常用命令2.1 net view2.2 net user2.3 net use2.4 net start2.5 net stop2.6 net share1 简介 net 命令是一种基于网络的命令,该命令包含了管理网络环境、服务、用户、登录等大部分重要的管理功能。 2 常用命令 2.1 net view 作用:显示域…

Spring 之 @Component 和 @Configuration 两者区别以及源码分析

之前一直搞不清 Component 和 Configuration 这两个注解到底有啥区别,一直认为被这两修饰的类可以被 Spring 实例化嘛,不,还是见识太短,直到今天才发现这两玩意有这么大区别。很幸运能够及时发现,后面可以少走点坑&…

操作系统知识点

操作系统的目标: 方便:使计算机系统易用 有效:以更有效的方式使用计算机系统资源 扩展:方便用户有效开发、测试和引进新功能 操作系统的 作用: 1. 有效的管理资源 2.通过命令接口、编程接口等为用户提供各种…

【自然语言处理】【ChatGPT系列】Chain of Thought:从大模型中引导出推理能力

Chain-of-Thought Prompting:从大模型中引导出推理能力《Chain-of-Thought Prompting Elicits Reasoning in Large Language Models》论文地址:https://arxiv.org/pdf/2201.11903.pdf 相关博客 【自然语言处理】【ChatGPT系列】Chain of Thought&#xf…

什么是加权轮询?云解析DNS是否支持加权轮询?-中科三方

什么是加权轮询? 所谓的加权轮询算法,其实就是Weighted Round Robin,简称wrr。在我们配置Nginx的upstream的时候,带权重的轮询,其实就是wrr。 upstream backend { ip_hash; server 192.168.1.232 weight4; server 19…

无疫苗未吃药,48小时内阳康全纪实个案

为了不误导不同体质的人,特意强调这是个案,阳康方案仅供参考。小编体质偏寒,长期熬夜,黑白颠倒,有习惯性头痛症。经验总结:1.受到风寒是病发的直接导火索,就算携带病毒,本体没有受到…

Android实现红绿灯检测(含Android源码 可实时运行)

Android实现红绿灯检测(含Android源码 可实时运行) 目录 Android实现红绿灯检测(含Android源码 可实时运行) 1. 前言 2. 红绿灯检测数据集说明 3. 基于YOLOv5的红绿灯检测模型训练 4.红绿灯检测模型Android部署 (1) 将Pytorch模型转换ONNX模型 &…

吉林优美姿:抖音怎么增加销量?

为了更好的在做抖音好物联盟,那么一些抖音达人也会想方设法的去报名申请,那么大家是否真的清楚这个报名要怎么做呢?具体有什么要求呢?跟着吉林优美姿小编来一起看看吧! 注册要求:凡注册抖音 APP并开通产品分…

大数据培训Impala之存储和压缩

注:impala不支持ORC格式 1.创建parquet格式的表并插入数据进行查询 [hadoop104:21000] > create table student2(id int, name string) > row format delimited > fields terminated by ‘\t’ > stored as PARQUET; [hadoop104:21000] > insert …

工控CTF之协议分析9——其他协议

协议分析 流量分析 主要以工控流量和恶意流量为主,难度较低的题目主要考察Wireshark使用和找规律,难度较高的题目主要考察协议定义和特征 简单只能简单得干篇一律,难可以难得五花八门 常见的工控协议有:Modbus、MMS、IEC60870、…

【计算机视觉】回顾2022年计算机视觉领域最激动人心的进展

目录:回顾2022年计算机视觉一、前言二、计算机视觉趋势2.1 Transformer统治计算机视觉2.2 以数据为中心的计算机视觉获得牵引力2.3 AI 生成的艺术作品2.4 多模态人工智能成熟三、计算机视觉的新应用3.1 运动领域3.2 环境保护3.3 自动驾驶3.4 健康与医药四、总结一、…

数据类型隐式转换导致的阻塞

背景 不合适的数据类型隐式转换会导致性能下降和并发下降,而且大多数技术人员对隐式转换的概念是陌生的,因此在生产环境中非常常见,通过本文做一个系统的梳理。 现象 收到SQL专家云阻塞告警邮件,登录SQL专家云,进入实…

推荐系统学习笔记-冷启动

简介 推荐系统的主要目标是将大量的标的物推荐给可能喜欢的海量用户, 这里涉及到标的物和用户两类对象。任何互联网推荐产品, 标的物和用户都是不断增长变化的,所以一定会频繁面对新标的物和新用户, 推荐系统冷启动问题指的就是对于新注册的用户或者新入库的标的物…

CDGA|2022年内有超20家银行因数据治理模块受罚,原因都在这里

今年,银保监会对银行数据治理的监管趋严,对银行机构在监管数据质量和数据报送中存在的违法违规行为,不断加大处罚与整治力度。 近日,北京农商银行收到的一张630万元罚单显示,该行主要存在的违法违规事实具体为&#xf…

NVMe解读

看NVMe协议(1.0e)过程中,参考了SSDFans的很多文章内容, 目录 1. 综述 3 1.1 名词解释 3 1.1.1 Namespace 3 1.1.2 Fused Operations 4 1.1.3 指令执行顺序 4 1.1.4 写单元的原子性 4 1.1.5 元数据 4 1.1.6 仲裁机制 4 1…

图数据库知识点3:图数据库解决了什么问题?

在前面的两个知识点中我们先后介绍了: 知识点1:图数据库与关系型数据库的区别 知识点2:图思维方式 现在,我们可以更进一步来通过具体的例子来了解图数据库、图计算到底解决了什么问题。我们先来剖析下面这个问题: 图数据库查询…