004-利用Docker安装Mysql

利用Docker安装Mysql

一、在镜像仓库找到 Mysql

1.镜像仓库地址

https://hub.docker.com

2.复制命令
powershell 复制代码
docker pull mysql:8.0
3.下载Mysql镜像
4.查看镜像
powershell 复制代码
docker images

二、创建实例并启动

powershell 复制代码
docker run -p 3306:3306 --name mysql -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0
html 复制代码
参数说明:
-p3306:3306:将容器的3306端口映射到主机的3306端口
-v/mydata/mysql/conf:/etc/mysql:将配置文件夹挂载到主机
-v/mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
-v/mydata/mysql/data:/var/lib/mysql/:将配置文件夹挂载到主机
-eMYSQLROOTPASSWORD=root:初始化root用户的密码
  • 查看容器:
powershell 复制代码
docker ps -a

发现容器状态为 Exited 表示启动失败

  • 查看容器启动失败的日志
powershell 复制代码
docker logs containerID

检查本地配置目录:

确认本地的 /mydata/mysqlconf目录中 是否存在 conf.d 和 mysql.conf.d 子目录,如果不存在,创建这个子目录。

powershell 复制代码
-- 创建子目录
mkdir -p /mydata/mysql/conf/conf.d
mkdir -p /mydata/mysql/conf/mysql.conf.d
  • 再启动Mysql
powershell 复制代码
docker start mysql
  • 查看容器启动状态
powershell 复制代码
docker ps

status:Up 。。表示容器正在运行

三、用本地工具连接数据库

进入到容器内部:

powershell 复制代码
docker exec -it mysql /bin/bash

四、设置 Mysql 配置

java 复制代码
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake 
skip-name-resolve
  • 重启mysql
powershell 复制代码
docker restart mysql
相关推荐
imDwAaY9 分钟前
MySQL 存储引擎是什么?
android·数据库·mysql
for_ever_love__19 分钟前
MySQL 8.0 数据类型选型指南:INT、DECIMAL、VARCHAR 与时间字段怎么选
mysql·adb·数据类型·varchar·长度·字段类型选择
AscendKing1 小时前
Docker Compose 一键部署 SkyWalking 10.2.0 + Elasticsearch8.11,分布式链路追踪完整实战
elasticsearch·docker·skywalking·链路追踪·微服务监控
张张123y1 小时前
# 后端第七课:FastAPI 实战入门(用刚学的 Python 写第一个 API 接口)
开发语言·python·mysql·api·fastapi
励志师code1 小时前
Kubernetes 集群节点生命周期管理实战:从扩容、调度管控到证书续期
运维·docker·容器·kubernetes·gpu算力·kubelet
渣渣盟1 小时前
2000万QPS背后的存储引擎博弈:InnoDB、MyRocks、WiredTiger到底谁更强?
数据库·mysql
张张123y2 小时前
# 后端第八课:数据库入门(给 FastAPI 接口加上“记忆“,存下问答历史)
数据库·sql·mysql·oracle·fastapi·sqllite
木雷坞2 小时前
Docker Compose部署Metabase:应用库隔离与日期筛选看板
运维·docker·容器
怒放的生命19912 小时前
前端项目 Docker 打包实操指南
前端·docker·容器
tedcloud1232 小时前
Docker Compose 部署 Immich:手机照片自动备份与常见故障排查
运维·前端·docker·容器·智能手机·开源·流程图