docker-compose 部署 MySQL 8

目录

  • 前言
  • MySQL 配置文件(my.cnf)
  • docker-compose.yml
  • 安装
  • 卸载

前言

Windows/Linux 系统通过 docker-compose 部署 MySQL8.0。

MySQL 配置文件(my.cnf)

# 服务端参数配置
[mysqld]
user=mysql                     # MySQL启动用户
default-storage-engine=INNODB  # 创建新表时将使用的默认存储引擎
character-set-server=utf8mb4   # 设置mysql服务端默认字符集
collation-server = utf8mb4_general_ci # 数据库字符集对应一些排序等规则,注意要和character-set-server对应pid-file        = /var/lib/mysql/mysqld.pid  # pid文件所在目录
socket          = /var/lib/mysql/mysqld.sock # 用于本地连接的socket套接字
datadir         = /var/lib/mysql             # 数据文件存放的目录
bind-address   = 127.0.0.1                   # MySQL绑定IP
expire_logs_days=7                            # 定义清除过期日志的时间(这里设置为7天)# 设置client连接mysql时的字符集,防止乱码
init_connect='SET NAMES utf8mb4'# 是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names = 1# 执行sql的模式,规定了sql的安全等级, 暂时屏蔽,my.cnf文件中配置报错
#sql_mode = STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION# 事务隔离级别,默认为可重复读,mysql默认可重复读级别(此级别下可能参数很多间隙锁,影响性能)
transaction_isolation = READ-COMMITTED# TIMESTAMP如果没有显示声明NOT NULL,允许NULL值
explicit_defaults_for_timestamp = true#它控制着mysqld进程能使用的最大文件描述(FD)符数量。
#需要注意的是这个变量的值并不一定是你设定的值,mysqld会在系统允许的情况下尽量获取更多的FD数量
open_files_limit    = 65535# 允许最大连接数
max_connections=200#最大错误连接数
max_connect_errors = 600[client]
default-character-set=utf8mb4  # 设置mysql客户端默认字符集

docker-compose.yml

version: '3' # 指定了 Docker Compose 文件的格式版本,版本3是常用版本之一
services:mysql:image: mysql:8.0 # https://hub.docker.com/_/mysql/container_name: mysqlrestart: unless-stopped #  指定了容器的重启策略,除了手动停止容器,其他情况都自动重启容器environment:- TZ=Asia/Shanghai # 指定了容器的环境变量,设置容器的时区为上海时区- LANG=en_US.UTF-8 # 指定了容器的环境变量,设置容器的编码为UTF-8- MYSQL_ROOT_HOST='%'- MYSQL_ROOT_PASSWORD=123456ports:- 3306:3306logging:driver: "json-file"options:max-size: "10m"max-file: "3"volumes:- ./conf/my.cnf:/etc/my.cnf # 指定了容器的数据卷映射关系,将宿主机的nginx.conf文件映射到容器的/etc/nginx/nginx.conf文件- ./data:/var/lib/mysql # 指定了容器的数据卷映射关系,将宿主机的html目录映射到容器的/usr/share/nginx/html目录- ./logs:/var/log/mysql # 指定了容器的数据卷映射关系,将宿主机的logs目录映射到容器的/var/log/nginx目录

安装

docker-compose -f docker-compose.yml -p mysql up -d


使用 Navicat 测试连接
在这里插入图片描述

卸载

docker-compose -f docker-compose.yml -p mysql down

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

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

相关文章

HTTP代理与SOCKS5代理,有什么区别?

在数字通信领域,数据安全和匿名性都是非常重要的指标。互联网的不断发展催生了几种协议,每种协议都有独特的优势和挑战。其中,SOCKS5 代理、HTTP代理最为广泛使用,下面给大家一起讨论,HTTP代理与SOCKS5代理&#xff0c…

POE也收费了

一直通过POE在用chatgpt,今天下午发现要收费了…

开发知识点-Vue-Electron

Electron ElectronVue打包.exe桌面程序 ElectronVue打包.exe桌面程序 为了不报错 卸载以前的脚手架 npm uninstall -g vue-cli安装最新版脚手架 cnpm install -g vue/cli创建一个 vue 随便起个名 vue create electron-vue-example (随便起个名字electron-vue-example)进入 创建…

ai语音电销机器人电销行业要怎么降低封号率?

工信部对电话营销电话的管控越来越严格,企业电销行业的发展受到了很多限制,因为电话销售人员在进行销售工作的时候,经常会因为各种原因触发封号机制,导致手机卡号被封,那企业电销行业要怎么降低封号率? 很多…

vue+iView实现下载zip文件导出多个excel表格

1&#xff0c;需求&#xff1a;在vue项目中&#xff0c;实现分月份导出多个Excel表格。 点击导出&#xff0c;下载zip文件&#xff0c;解压出多张表数据。 2&#xff0c;关键代码&#xff1a; <Button class"export button-style button-space" click"ex…

ssm823基于ssm的心理预约咨询管理系统的设计与实现+vue

ssm823基于ssm的心理预约咨询管理系统的设计与实现vue 交流学习&#xff1a; 更多项目&#xff1a; 全网最全的Java成品项目列表 https://docs.qq.com/doc/DUXdsVlhIdVlsemdX 演示 项目功能演示&#xff1a; ————————————————

【QT HTTP】使用QtNetwork模块制作基于HTTP请求的C/S架构

目录 0 引言1 HTTP基本知识1.1 请求类型1.2 HTTP请求报文格式1.3 HTTP响应报文格式1.4 拓展&#xff1a;GET vs POST 请求方法GET请求请求报文&#xff1a;响应报文 POST请求请求报文响应报文 其他注意事项示例&#xff1a;GET请求示例POST请求示例 2 实战2.1 QtNetwork模块介绍…

Kafka 的应用场景

Kafka 是一个开源的分布式流式平台&#xff0c;它可以处理大量的实时数据&#xff0c;并提供高吞吐量&#xff0c;低延迟&#xff0c;高可靠性和高可扩展性。 Kafka 最初是为分布式系统中海量日志处理而设计的。它可以通过持久化功能将消息保存到磁盘&#xff0c;并让消费者按…

Express基本接口开发-入门学习与后续进阶

前提推荐 任何一个新的知识都是从文档看起&#xff0c;因此express官方文档示例有必要去学习一遍。 推荐看&#xff1a; 推荐入门指南-路由指南-中间件 看完这几个内容之后心里大概知道express有些什么东西了&#xff0c;然后现在就可以去练习了 注意&#xff1a;更多示例-代…

安全区域边界(设备和技术注解)

网络安全等级保护相关标准参考《GB/T 22239-2019 网络安全等级保护基本要求》和《GB/T 28448-2019 网络安全等级保护测评要求》 密码应用安全性相关标准参考《GB/T 39786-2021 信息系统密码应用基本要求》和《GM/T 0115-2021 信息系统密码应用测评要求》 1边界防护 1.1应保证跨…

03-CSS基础选择器

3.1 CSS基础认知&#x1f34e; 3.1.1 &#x1f441;️‍&#x1f5e8;️CSS概念 CSS&#xff1a;层叠样式表&#xff08;Cascading style sheets)&#xff0c;为网页标签增加样式表现的 语法格式&#xff1a; 选择器{<!-- 属性设置 -->属性名:属性值; <!--每一个…

Spring Cloud Netflix微服务组件-Eureka

CAP理论 分区容忍是能容忍一个或一部分节点挂掉后&#xff0c;整体系统也能正常工作&#xff08;就是别的节点还是活着的&#xff09;&#xff0c;所以分布式系统中P是必须要有的。比如数据库主从架构&#xff0c;主从两个节点之间需要数据同步&#xff0c;主挂了&#xff0c;…

Mysql中的索引与事务和B树的知识补充

索引与事务和B树的知识补充 一.索引1.概念2.作用3.使用场景4.使用 二.事务1.为什么使用事务2.事务的概念3.使用3.1脏读问题3.2不可重复读3.3 幻读问题3.4解决3.5 使用代码 三.B树的知识补充1.B树2.B树 一.索引 1.概念 索引是一种特殊的文件&#xff0c;包含着对数据表里所有记…

程序员一般从什么平台兼职接私活?国内外主流9大平台汇总!

我想对于有一定工作经验的工程师来说&#xff0c;肯定听说过或者切身经历过公司裁员、公司倒闭、甚至清退年龄稍大的工程师等一系列负面情况。 其实我们作为员工来说&#xff0c;面对这些打击&#xff0c;我们能争取到的权益是比较少的&#xff0c;即使争取到了一些权益或补偿…

【功能栏】基于session的模拟短信注册功能

框架&#xff1a; spring boot mybatis-plus 目录 1.创建user表 ​编辑2. mybatis-plus插件 3.导入相关依赖 4.配置文件 5.前端代码 register.html style.css 6.后端代码 entity层 mapper层 sevice层 业务层接口 业务层实现类 controller层 7.调试 1. 未输…

unity UGUI无限循环滚动居中

最近在做一个ui循环滚动的功能&#xff0c;网上找了半天脚本感觉都和我实际需求不太符合&#xff0c;自己花费一些时间完成了这个功能记录一下。下面开始正题 &#xff0c;我是采用unity自带组件Scroll View来完成&#xff0c;首先设置Scroll View如下图 面板层级结构如下 然…

C语言每日一题(29)合并两个有序链表

力扣网 21合并两个有序链表 题目描述 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 思路分析 最基本的一种思路就是&#xff0c;遍历两个链表&#xff0c;将对应结点的值进行比较&#xff0c;题目要求是要升序排…

基于安卓android微信小程序的食谱大全系统

项目介绍 本文以实际运用为开发背景&#xff0c;运用软件工程原理和开发方法&#xff0c;它主要是采用java语言技术和mysql数据库来完成对系统的设计。整个开发过程首先对食谱大全进行需求分析&#xff0c;得出食谱大全主要功能。接着对食谱大全进行总体设计和详细设计。总体设…

实现高值医疗耗材智能化管理的RFID医疗柜解决方案

一、行业背景 医疗物资管理面临着一系列问题&#xff0c;如高值耗材种类激增导致准入标准弱化、信息追踪困难、管理责任不明确等&#xff0c;医院内部设备、财务和临床科室相互独立&#xff0c;兼容性不佳&#xff0c;高值耗材储备不足&#xff0c;缺乏合理的预警机制&#xf…

Java 21:最新特性、性能改进和语言发展

文章目录 模式匹配和模式变量新的记录类型生产者接口本地类型推断的扩展新的垃圾收集器动态CDS档案G1垃圾收集器的增强Java语言的持续发展性能改进和JEPJava 21的部署和使用Java 21的生态系统结语 &#x1f389;欢迎来到Java学习路线专栏~Java 21&#xff1a;最新特性、性能改进…