docker安装mysql8.0教程

文章目录

  • ①:环境准备
  • ②:docker安装
  • ③:mysql8.0.36安装
  • ④:mysql8.0.36容器启动

 

①:环境准备

如果你的云主机已经有下面的这些基础软件包请忽略

假设新拿到一台机器,为了以后使用命令方便,先安装一些基础软件包

# 给每台主机安装基础软件包
yum install -y yum-utils device-mapper-persistent-data lvm2 wget net-tools nfs-utils lrzsz gcc gcc-c++ make cmake libxml2-devel openssl-devel curl curl-devel unzip sudo ntp libaio-devel wget vim ncurses-devel autoconf automake zlib-devel python-devel epel-release openssh-server socat ipvsadm conntrack ntpdate telnet

 

②:docker安装

接下来安装docker(如果机器上已有docker请忽略)

docker安装
# 1.配置阿里云 repo 源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 2.安装 docker-ce
yum install docker-ce -y# 3.配置镜像加速
tee /etc/docker/daemon.json << 'EOF'
{
"registry-mirrors":["https://kn0t2bca.mirror.aliyuncs.com", "https://gqs7xcfd.mirror.aliyuncs.com","https://hub-mirror.c.163.com"],
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF# 4.docker启动和激活等
systemctl daemon-reload
systemctl restart docker
systemctl status docker
systemctl enable docker# 查看docker版本
docker -v

 

③:mysql8.0.36安装

# 1.创建物理机挂载目录 
sudo mkdir -p /data/mysql/data /data/mysql/logs /data/mysql/conf# 2.进入mysql配置目录
cd /data/mysql/conf# 3.创建mysq的my.cnf配置文件,补充mysql8.0的配置文件(如下)
touch my.cnf# =============== 配置内容如下(可根据自己情况修改)==============#设置客户端默认字符集utf8mb4default-character-set=utf8mb4[mysql]#设置服务器默认字符集为utf8mb4default-character-set=utf8mb4[mysqld]#配置服务器的服务号,具备日后需要集群做准备server-id = 1#开启MySQL数据库的二进制日志,用于记录用户对数据库的操作SQL语句,具备日后需要集群做准备log-bin=mysql-bin#设置清理超过30天的日志,以免日志堆积造过多成服务器内存爆满expire_logs_days=30#允许最大的连接数max_connections=16384# 禁用符号链接以防止各种安全风险symbolic-links=0# 设置东八区时区default-time_zone = '+8:00'#wait_timeout参数值,由默认的8小时,修改为30分钟。wait_timeout=1800#修改back_log参数值:由默认的50修改为500 每个线程256K 1.6W线程2G左右back_log=500character_set_server=utf8mb4character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ciinit_connect=SET NAMES utf8mb4# =========================== 结 束 ===========================# 4.拉取mysql:8.0.36镜像文件
docker pull mysql:8.0.36

 

④:mysql8.0.36容器启动

# 5.启动mysql:8.0.36
docker run -p 3306:3306 --name mysql --restart always -v /data/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /data/mysql/logs:/logs -v /data/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0.36

容器运行命令解释

  • docker run: 启动一个新的容器。
  • -p 3306:3306: 将主机的 3306 端口映射到容器的 3306 端口,MySQL 默认使用 3306 端口。
  • --name mysql: 给这个容器命名为 mysql。
  • --restart always: 设置容器自动重启策略,always 表示无论因为什么原因退出,Docker 守护进程都会自动重启容器。
  • -v /data/mysql/conf/my.cnf:/etc/mysql/my.cnf: 将主机的 /data/mysql/conf/my.cnf 文件挂载到容器的 /etc/mysql/my.cnf 文件,这个文件是 MySQL 的配置文件。
  • -v /data/mysql/logs:/logs: 将主机的 /data/mysql/logs 目录挂载到容器的 /logs 目录,用于存储日志文件。
  • -v /data/mysql/data:/var/lib/mysql: 将主机的 /data/mysql/data 目录挂载到容器的 /var/lib/mysql 目录,用于存储数据库数据。
  • -e MYSQL_ROOT_PASSWORD=root: 设置 MySQL 的 root 用户密码为 root,通过环境变量 MYSQL_ROOT_PASSWORD 传递。
  • -d: 后台运行容器并返回容器 ID。
  • mysql:8.0.36: 使用 mysql 镜像的 8.0.36 版本来创建容器。

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

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

相关文章

03--nginx架构实战

前言&#xff1a;这应该是nginx梳理的最后一章&#xff0c;写一些关于网站架构和网站上线的知识内容&#xff0c;主要是感觉到运维并不是单一方向的行业&#xff0c;这一章概念会有一些广泛&#xff0c;但是非常重要&#xff0c;都是这几年工作中遇到的情况&#xff0c;整理一下…

【设计模式】JAVA Design Patterns——Private Class Data(私有类数据设计模式)

&#x1f50d;目的 私有类数据设计模式试图通过限制属性的可见性来减少属性的暴露。 通过将它们封装在单个Data对象中&#xff0c;可以减少类属性的数量。 &#x1f50d;解释 真实世界例子 想象一下你在为家人做晚餐炖汤。你想阻止家庭成员在你烹饪时偷偷品尝菜品&#xff0c;否…

C#WPF数字大屏项目实战08--生产量/良品统计

1、区域划分 生产量/良品统计这部分位于第二列的第二行 2、livechart拆线图 定义折线图,如下: <lvc:CartesianChart> <lvc:CartesianChart.Series> <!--设置Series的类型为 Line 类型, 该类型提供了一些折线图的实现--> <lvc:LineSeries/>…

什么是Vector Database(向量数据库)?

什么是Vector Database(向量数据库)&#xff1f; 向量数据库是向量嵌入的有组织的集合&#xff0c;可以随时创建、读取、更新和删除。向量嵌入将文本或图像等数据块表示为数值。 文章目录 什么是Vector Database(向量数据库)&#xff1f;什么是嵌入模型(Embedding Model)&…

如何在JVM中基于引用计数法实现GC

一. 为什么使用RC 再Java虚拟机中&#xff0c;目前广泛使用的是引用计数法&#xff0c;具体详细请见&#xff1a;说说JVM的垃圾回收机制-CSDN博客 而为什么我使用引用计数来实现gc呢&#xff1f;其一是因为可达性分析法中我们需要先收集根集对象&#xff0c;GC roots主要包括&a…

idea 常用插件推荐

文章目录 1、Lombok2、Convert YAML and Properties File3、Grep Console4、MyBatisX5、Free MyBatis Tool6、MyBatis Log EasyPlus &#xff08;SQL拼接&#xff09;7、MyBatisPlus8、Eclipse theme9、Eclipse Plus Theme10、Rainbow Brackets Lite - Free and OpenSource&…

操作系统教材第6版——个人笔记3

2.1 处理器 2.1.1 处理器与寄存器 处理器部件的简单示意 用户程序可见寄存器 可以使程序员减少访问主存储器的次数&#xff0c;提高指令执行的效率所有程序可使用&#xff0c;包括应用程序和系统程序数据寄存器&#xff1a;又称通用寄存器地址寄存器&#xff1a;索引、栈指针…

Linux基础知识(十二)

1.新建用户 1)useradd 2)passwd 2.完成的操作 1&#xff09;/etc/passwd添加一行 2&#xff09;/etc/shadow添加一行 3&#xff09;/etc/group添加一行 4&#xff09;创建家目录 5&#xff09;创建用户邮件文件 例&#xff1a;创建用户jerry 要求&#xff1a;UID:777 主…

review of c++

友元关系是单向的。 指针

为什么要做与运算?网关如何和ip做与运算?

在计算机网络中&#xff0c;“与运算”是一个基本而重要的概念&#xff0c;尤其在IP地址和子网掩码的处理中起着关键作用。本文将解释为什么要进行与运算&#xff0c;以及网关如何和IP地址进行与运算。 为什么要做与运算&#xff1f; 1. 确定网络地址 与运算&#xff08;AND…

Linux学习笔记9

Linux 进程间通信 介绍一下管道&#xff0c;管道是一种特殊的文件&#xff0c;它通过文件描述符来进行访问和操作 管道的读写操作是阻塞式的&#xff0c;如果没有数据可读&#xff0c;读操作会被阻塞&#xff0c;直到有数据可读&#xff1b;如果管道已满&#xff0c;写操作也…

CodeArts 6月体验官活动重磅来袭,限量领取华为GT系列手表!

千呼万唤始出来&#xff0c;CodeArts 6月体验官活动来啦&#xff01; 为了让开发者更好地体验CodeArts&#xff0c;小编特意给大家准备了重磅好礼。 不仅有华为GT系列手表&#xff0c;还有开发者定制礼盒&#xff0c;更有多重定制好礼~ 快叫上小伙伴一起来体验CodeArts&…

2024年湖北职称评审面试答辩技巧有哪些?看完你就懂了

2024年度湖北省部分工程专业水平能力测试面试答辩开始了&#xff0c;答辩时间是&#xff1a;2024年6月15、16日。 测试地点&#xff1a;武汉市武昌区洪山侧路63号茶港军转小区1号楼(武汉大学西门旁) 水平能力测试注意事项&#xff1a; &#xff08;一&#xff09;报名参加202…

数据结构之归并排序算法【图文详解】

P. S.&#xff1a;以下代码均在VS2019环境下测试&#xff0c;不代表所有编译器均可通过。 P. S.&#xff1a;测试代码均未展示头文件stdio.h的声明&#xff0c;使用时请自行添加。 博主主页&#xff1a;LiUEEEEE                        …

mediaPlayer的内存泄露解决方法

MediaPlayer在Android中用于播放音频和视频。如果不正确管理&#xff0c;MediaPlayer可能会导致内存泄漏&#xff0c;尤其是当它被用于多个Activity或长时间播放时。以下是一些解决MediaPlayer内存泄漏的方法&#xff1a; ### 1. 及时释放资源 当MediaPlayer不再使用时&#x…

Kolmogorov–Arnold Networks (KAN) 即将改变 AI 世界

目录 一、说明 二、KAN介绍 2.1 什么是 Kolmogorov-Arnold Networks &#xff08;KAN&#xff09;&#xff1a; 2.2 KAN 的秘诀&#xff0c;Splines&#xff01; 2.3 了解KAN工作的最简单方法 三、KAN的主要优点 四、KAN 的 Python 实现 &#xff08;PyKAN&#xff09; 4.1 …

可燃气体报警器效检:预防事故,守护家园

在现代化工业生产、居民生活中&#xff0c;可燃气体报警器作为安全预防的重要工具&#xff0c;其准确性和可靠性直接关系到人们的生命财产安全。 因此&#xff0c;对可燃气体报警器进行定期效检&#xff0c;确保其处于最佳工作状态&#xff0c;是保障安全生产的必要措施。 接…

Java集合之List(超详细)

List是Java集合框架中一个非常重要的接口&#xff0c;它代表了一个有序的集合&#xff0c;允许元素重复&#xff0c;并且可以按照插入的顺序进行访问。 我们先来看看List在集合中的位置&#xff1a; List是单列集合接口Collection下的一个分支&#xff0c;另两个分支是Set和Qu…

【Redis数据库百万字详解】数据类型

文章目录 一、字符串类型概述1.1、数据类型1.2、字符串简介1.3、字符串应用场景 二、字符串命令三、哈希类型概述3.1、哈希介绍3.2、哈希类型应用场景3.3、哈希命令 四、列表类型概述4.1、列表简介4.2、使用场景4.3、列表命令 五、集合概述5.1、集合简介5.2、使用场景5.3、集合…

[大师C语言(第二十一篇)]C语言字节对齐技术详解

引言 在计算机系统中&#xff0c;内存对齐是一种非常重要的技术。它指的是数据在内存中的存放位置与内存地址之间的关系。C语言作为一种高级编程语言&#xff0c;提供了丰富的内存对齐操作&#xff0c;使得程序员可以灵活地控制数据在内存中的布局。本文将深入探讨C语言对齐背…