【Docker】安装MySQL 通俗易懂 亲测没有任何问题

目录

1.拉取镜像

2.运行容器

3.创建mysql配置文件

4.测试

1.拉取镜像

dockerhub官网:Docker

如果需要其他版本mysql

docker pull mysql:xxx(版本)

docker pull mysql #默认拉取最新版本 latest

2.运行容器

docker run -d -p 3306:3306 --restart=always --privileged=true \

-v /usr/local/mysql/log:/var/log/mysql \

-v /usr/local/mysql/data:/var/lib/mysql \

-v /usr/local/mysql/conf:/etc/mysql/conf.d \

-v /etc/localtime:/etc/localtime:ro \

-e MYSQL_ROOT_PASSWORD=123456 \

--name mysql mysql:latest

-p 3306:3306 指定宿主机端口和容器端口映射关系

--privileged=true 获取宿主机root权限

--restart=always 总是跟随docker启动

-v /usr/local/mysql/log:/var/log/mysql:映射日志目录,宿主机:容器

-v /usr/local/mysql/data:/var/lib/mysql:映射数据目录,宿主机:容器

-v /usr/local/mysql/conf:/etc/mysql:映射配置目录,宿主机:容器

-v /etc/localtime:/etc/localtime:ro:让容器的时钟与宿主机时钟同步,避免时区的问题,ro是read

only的意思,就是只读。

-e MYSQL_ROOT_PASSWORD=123456:指定mysql环境变量,root用户的密码为123456

-d mysql:latest:后台运行mysql容器,版本是latest。

3.创建mysql配置文件

上面已经挂载了mysql的配置文件目录,就可以直接在宿主机操作对应的目录了

在配置文件目录新建一个my.cnf配置文件,写入下面内容,设置客户端和mysql服务器端编码都为

utf8

如果不设置客户端和mysql服务器编码一致 会出现编码问题

bash 复制代码
[client]
default_character_set=utf8
[mysqld]
collation_server=utf8_general_ci
character_set_server=utf8

4.测试

并且mysql的数据目录也已经挂载到本地了,就算把容器删除创新创建一个容器,也使用同样的数

据卷,就可以恢复之前创建的库表

相关推荐
玄斎2 分钟前
MySQL 单表操作通关指南:建库 / 建表 / 插入 / 增删改查
运维·服务器·数据库·学习·程序人生·mysql·oracle
李慕婉学姐5 分钟前
【开题答辩过程】以《基于Android的出租车运行监测系统设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·后端·vue
m0_7400437312 分钟前
SpringBoot05-配置文件-热加载/日志框架slf4j/接口文档工具Swagger/Knife4j
java·spring boot·后端·log4j
编织幻境的妖14 分钟前
SQL查询连续登录用户方法详解
java·数据库·sql
编程小Y1 小时前
MySQL 与 MCP 集成全解析(核心原理 + 实战步骤 + 应用场景)
数据库·mysql·adb
未若君雅裁1 小时前
JVM面试篇总结
java·jvm·面试
kk哥88991 小时前
C++ 对象 核心介绍
java·jvm·c++
招风的黑耳1 小时前
我用SpringBoot撸了一个智慧水务监控平台
java·spring boot·后端
xunyan62341 小时前
面向对象(下)-接口的理解
java·开发语言
程序员游老板1 小时前
基于SpringBoot3+vue3的爱心陪诊平台
java·spring boot·毕业设计·软件工程·课程设计·信息与通信