一起学docker系列之八使用 Docker 安装配置 MySQL
目录
- 前言
- 步骤 1:拉取 MySQL 镜像
- 步骤 2:运行 MySQL 容器
- 步骤 3:检查容器状态
- 步骤 4:进入 MySQL 容器
- 步骤 5:配置 MySQL 字符编码
- 步骤 6:重启 MySQL 容器
- 步骤 7:测试字符编码
- 步骤 8:使用外部工具验证
前言
MySQL 是一款广泛应用于各种应用程序的流行开源关系型数据库管理系统。Docker 提供了便捷的容器化方式来安装和管理 MySQL。本指南将带您逐步完成使用 Docker 设置 MySQL 的过程,并解决涉及非英文字符编码的潜在问题,以及各种报错的解决。

在开始之前,请确保您的机器上已安装 Docker。
步骤 1:拉取 MySQL 镜像
首先,从 Docker Hub 拉取 MySQL 5.7 镜像:
docker pull mysql:5.7
该命令从官方 Docker 仓库获取 MySQL 5.7 镜像。
步骤 2:运行 MySQL 容器
使用以下命令运行 MySQL 容器:
docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
各参数解释:
-d:以分离模式运行容器。-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口,以便访问 MySQL。--name mysql:为容器分配名称“mysql”,以便更轻松地管理。-e MYSQL_ROOT_PASSWORD=123456:将 MySQL root 用户密码设置为“123456”。
步骤 3:检查容器状态
使用以下命令验证 MySQL 容器是否正在运行:
docker ps
此命令将显示活动容器的列表,包括 MySQL 容器。
步骤 4:进入 MySQL 容器
通过以下命令访问 MySQL 容器的终端:
docker exec -it mysql /bin/bash
此命令允许您与 MySQL 容器的 shell 进行交互。
步骤 5:配置 MySQL 字符编码
默认情况下,MySQL 对于非英文字符可能存在字符编码问题。为解决此问题,为 MySQL 创建一个配置文件。
cd /etc/mysql/conf.d
vim my.cnf
编辑 my.cnf 文件,添加以下配置:
[client]
default-character-set=utf8mb4[mysql]
default-character-set=utf8mb4[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
这些配置将字符集设置为 utf8mb4,以正确处理非英文字符。
步骤 6:重启 MySQL 容器
重新启动 MySQL 容器以应用新的配置更改:
docker restart mysql
步骤 7:测试字符编码
在 MySQL 容器内部,登录到 MySQL shell:
mysql -uroot -p
创建一个数据库、表并插入包含非英文字符的数据:
create database db01;
use db01;
create table t1(id int, name varchar(20));
insert into t1 values(1, "你好世界");
select * from t1;
这将测试 MySQL 对非英文字符的处理情况。
步骤 8:使用外部工具验证
使用 Navicat 等外部工具连接到 MySQL,验证非英文字符的插入情况,确保正确处理并且没有字符编码问题。

通过按照这些步骤,您可以使用 Docker 设置 MySQL,并解决涉及非英文字符编码的潜在问题。
相关文章:
一起学docker系列之八使用 Docker 安装配置 MySQL
目录 前言步骤 1:拉取 MySQL 镜像步骤 2:运行 MySQL 容器步骤 3:检查容器状态步骤 4:进入 MySQL 容器步骤 5:配置 MySQL 字符编码步骤 6:重启 MySQL 容器步骤 7:测试字符编码步骤 8:…...
4G执法记录仪在大型安保集团,保安集团、蓝天救援队中的 应用,行为规范化,人员定位,考勤打卡,应急指挥调度
【智能化升级】揭秘4G/5G执法记录仪在安保与救援领域如何重塑行业标准与效率 在快速发展的社会当中,大型安保集团、保安集团和蓝天救援队所肩负的任务日益繁重与复杂。无论是在平时的治安巡查、安保执勤,还是在突发公共事件的应急响应中,如何…...
分布式事务,一致性理论, 两阶段提交(2PC), 三阶段提交(3PC),Seata分布式事务方案
文章目录 分布式事务:1、一致性理论2、两阶段提交(2PC)3、三阶段提交(3PC)4、Seata分布式事务方案 上一篇降到了 分布式锁,先来和大家聊一聊分布式事务, 分布式锁的链接如下: http…...
摆脱无用代码的负担:TreeShaking 的魔力
🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…...
A-莲子的软件工程学【算法必会题目】(JavaPythonC++实现)
文章目录 A-莲子的软件工程学题目背景解题思路Python题解代码Java题解代码C++题解代码代码OJ评判结果代码讲解Python 代码解释:Java 代码解释:C++ 代码解释:寄语A-莲子的软件工程学 题目背景 在宇宙射线的轰击下,莲子电脑里的一些她自己预定义的函数被损坏了。 对于一名…...
STM32-SPI1控制AD7705(Sigma-Delta-ADC芯片)
STM32-SPI1控制AD7705(Sigma-Delta-ADC芯片) 原理图手册说明功能方框图引脚功能 片内寄存器通信寄存器(RS2、RS1、RS00、0、0)设置寄存器时钟寄存器数据寄存器(RS2、RS1、RS00、1、1)测试寄存器(…...
13年老鸟总结,性能测试方法汇总+性能响应很慢排查方法(详全)
目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、性能测试包含哪…...
[网络] 3. HTTP 3 与 HTTP 2 有什么区别
协议不同 HTTP2 是基于 TCP 协议实现的 HTTP3 是基于 UDP 协议实现的QUIC HTTP3 新增了 QUIC 协议来实现可靠性的传输握手次数 HTTP2 是基于 HTTPS 实现的,建立连接需要先进行 TCP 3次握手,然后再进行 TLS 3次握手,总共6次握手。 HTTP3 只需要…...
IDEA中的Postman?完全免费!
Postman是大家最常用的API调试工具,那么有没有一种方法可以不用手动写入接口到Postman,即可进行接口调试操作?今天给大家推荐一款IDEA插件:Apipost Helper,写完代码就可以调试接口并一键生成接口文档!而且还…...
用JAVA编程解决数位和相等问题
如果一个正整数转化成二进制与转换成八进制后所有数位的数字之和相等,则称为数位和相等的数。 前几个数位和相等的正整数为 1, 8, 9, 64, …… 请问第 23 个数位和相等的正整数是多少?用JAVA编程解决 可以通过编程计算第 23 个数位和相等的正整…...
Kotlin学习——kt中的类,数据类 枚举类 密封类,以及对象
Kotlin 是一门现代但已成熟的编程语言,旨在让开发人员更幸福快乐。 它简洁、安全、可与 Java 及其他语言互操作,并提供了多种方式在多个平台间复用代码,以实现高效编程。 https://play.kotlinlang.org/byExample/01_introduction/02_Functio…...
XUbuntu22.04之解决gpg keyserver receive failed no data(一百九十三)
简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…...
Hibernate 脏检查和刷新缓存机制
刷新缓存: Session是Hibernate向应用程序提供的操作数据库的主要接口,它提供了基本的保存,更新,删除和加载java对象的方法,Session具有一个缓存,可以管理和追踪所有持久化对象,对象和数据库中的相关记录对应,在某些时间点,Session会根据缓存中对象的变化来执行相关SQL语句,将对…...
蓝桥杯每日一题2023.11.25
题目描述 “蓝桥杯”练习系统 (lanqiao.cn) 题目分析 对于此题目最开始是递归想法,但发现题意中的匹配次数实际上是指在这8个字母中这8个字母每个字母对应的个数是否相同,如果相同则匹配。 此处我们可以使用subsrtr函数,每次循环截取8个字…...
深度学习第3天:CNN卷积神经网络
☁️主页 Nowl 🔥专栏《机器学习实战》 《机器学习》 📑君子坐而论道,少年起而行之 文章目录 介绍 CNN的主要结构 卷积层 激励层 池化层 Kears搭建CNN 搭建代码 直观感受卷积的作用 结语 介绍 卷积神经网络(Convol…...
# Panda3d 碰撞检测系统介绍
Panda3d 碰撞检测系统介绍 文章目录 Panda3d 碰撞检测系统介绍碰撞几何体的介绍碰撞球体碰撞胶囊反碰撞球体碰撞平面碰撞多边形碰撞射线碰撞直线碰撞段碰撞抛物线碰撞长方体碰撞系统图碰撞处理器碰撞处理器队列碰撞处理器事件碰撞处理器回退模型(CollisionHandlerPusher)物理…...
leetcode面试经典150题——31 无重复字符的最长子串(方法二极简代码!!!)
题目: 无重复字符的最长子串 描述: 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 leetcode链接 方法…...
Kafka(一):在WSL单机搭建Kafka伪集群
目录 1 运行Kafka单实例1.1 Windws1.1.1 安装包下载1.1.2 修改环境变量1.1.3 修改配置文件1.1.4 启动Kafka单机版 1.2 Linux1.2.1 安装包下载1.2.2 创建目录1.2.3 添加环境变量1.2.4 修改配置文件1.2.5 运行Kafka1.2.6 停止Kafka 2 搭建Kafka集群2.1 搭建Zookeeper集群2.2 搭建…...
mysql1124实验七索引管理
实验任务七 索引管理实验任务书 1. 实验目的 掌握在MySQL中使用MySQL Workbench或者SQL语句创建和使用索引的方法(以SQL命令为重点)。 掌握在MySQL中使用MySQL Workbench或者SQL语句查看和删除索引的方法(以SQL命令为重点)。 …...
[带余除法寻找公共节点]二叉树
二叉树 题目描述 如上图所示,由正整数1, 2, 3, ...组成了一棵无限大的二叉树。从某一个结点到根结点(编号是1的结点)都有一条唯一的路径,比如从10到根结点的路径是(10, 5, 2, 1),从4到根结点的路径是(4, 2, 1)&#x…...
忍者像素绘卷:天界画坊Java面试题精讲:AI项目中的多线程与资源管理
忍者像素绘卷:天界画坊Java面试题精讲:AI项目中的多线程与资源管理 1. 引言:当像素艺术遇上AI并发 在开发"忍者像素绘卷:天界画坊"这个AI驱动的像素艺术生成平台时,我们遇到了一个有趣的挑战:如…...
FLUX.2-Klein-9B-NVFP4快速上手:3步完成人像换装,效果惊艳
FLUX.2-Klein-9B-NVFP4快速上手:3步完成人像换装,效果惊艳 1. 为什么选择FLUX.2-Klein-9B-NVFP4? 你是否遇到过这样的困扰:想给照片中的人物换件衣服,要么需要复杂的PS技巧,要么使用AI工具效果不自然&…...
AI 驱动与 Wi-Fi 7 双剑合璧,全屋智能家居迎来“认知革命”
如果你觉得智能家居不过是“用手机开关灯”或者“对着音箱问问天气”,那么 2026 年的今天,这个定义已经被彻底颠覆。在 AI 大模型与 Wi-Fi 7 下一代无线网络技术的深度加持下,家庭空间正从“联网的房屋”进化为拥有感知、决策与执行能力的“智…...
ESP32-CAM的SD卡能跑多快?实测SDMMC 4线模式下的文件读写性能与优化
ESP32-CAM SD卡性能深度优化:从SDMMC配置到文件系统选型实战 在物联网边缘计算场景中,ESP32-CAM凭借其出色的图像采集能力和紧凑的硬件设计,成为众多嵌入式视觉项目的首选。然而当涉及到持续拍摄高分辨率图像或长时间记录传感器数据时&#x…...
Hugging Face下载卡住,下载缓慢,设置国内镜像hf-mirror.com
# 国内镜像加速,解决下载超时/失败问题export HF_ENDPOINThttps://hf-mirror.com可以写到 ~/.bashrc文件里source ~/.bashrc...
前端敏感数据国密SM2加密传输实战:从安全测试到代码落地
1. 当安全测试报告敲响警钟 那天下午,团队收到了甲方发来的安全测试报告。当我翻到"敏感信息明文传输"这一项时,后背突然一凉——我们的系统在传输用户手机号、银行卡号时,竟然像明信片一样毫无保护。这种中危漏洞就像把保险箱密码…...
芯片尺寸封装
芯片尺寸封装例题 以下那种封装形式是指芯片尺寸封装(A) A、CSP(Chip Scale Package) B、BGA(Ball Grid Array) C、SIP(System In Package) D、QFP(Plastic Quad Flat Package) CSP(芯片尺寸封装) Chip Scale Package, 即封装出来的芯片体积, 几乎和内部真实的硅晶圆裸片(Die)一…...
深度学习新手福音:PyTorch通用开发镜像,一键启动你的第一个AI项目
深度学习新手福音:PyTorch通用开发镜像,一键启动你的第一个AI项目 1. 镜像概述与核心优势 1.1 为什么选择这个镜像 PyTorch-2.x-Universal-Dev-v1.0是为深度学习初学者和开发者量身打造的一站式开发环境。想象一下,你刚接触深度学习&#…...
提示词工程(Prompt Engineering)-周红伟
你有没有遇到过这种情况:明明给了 AI 一个问题,得到的回答却空泛、跑题、毫无用处? 这不是 AI 的问题,往往是提问方式的问题。 提示词工程(Prompt Engineering)就是一门关于如何构造和精炼你的提示词的艺术…...
FreeRTOS队列实战:uxQueueMessagesWaiting在UART中断中的那些坑
FreeRTOS队列深度解析:UART中断中的uxQueueMessagesWaiting陷阱与实战对策 在嵌入式开发中,UART通信与FreeRTOS队列的结合使用堪称经典组合,但正是这种看似简单的组合,却暗藏诸多玄机。我曾在一个工业传感器采集项目中,…...
