前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >docker安装mysql:5.7(利用数据卷挂载方式启动)

docker安装mysql:5.7(利用数据卷挂载方式启动)

作者头像
别团等shy哥发育
发布2023-02-25 14:18:14
1.2K0
发布2023-02-25 14:18:14
举报
文章被收录于专栏:全栈开发那些事

docker安装mysql:5.7

1、Docker Hub上面查找mysql镜像

image-20220113233948615
image-20220113233948615

2、拉取镜像

代码语言:javascript
复制
docker pull mysql:5.7
image-20220113234128668
image-20220113234128668

3、新建mysql容器实例

代码语言:javascript
复制
docker run -d -p 3306:3306 --privileged=true
-v /zzyyuse/mysql/log:/var/log/mysql 
-v /zzyyuse/mysql/data:/var/lib/mysql 
-v /zzyyuse/mysql/conf:/etc/mysql/conf.d 
-e MYSQL_ROOT_PASSWORD=123456 
--name mysql mysql:5.7

将日志、数据、配置文件映射到宿主机上,做个数据卷,防止删容器跑路。

4、新建my.cnf文件

通过容器卷同步给mysql容器实例。

my.cnf文件如下:

主要是设置下字符集,要不插入中文的时候会显示?

代码语言:javascript
复制
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
image-20220113234633751
image-20220113234633751

5、重新启动mysql容器实例再重新进入并查看字符编码

代码语言:javascript
复制
docker restart mysql
代码语言:javascript
复制
docker exec -it mysql /bin/bash
代码语言:javascript
复制
SHOW VARIABLES LIKE 'character%';
image-20220113234919969
image-20220113234919969

6、新建库新建表插入中文测试

代码语言:javascript
复制
create database db01;
use db01;
create table t1(id int,name varchar(20))
insert into t1 values(1,'zhangsan')
insert into t1 values(2,'李四')
image-20220113235048361
image-20220113235048361

7、删除当前容器实例并重新创建实例,之前的数据是否还在?

删除当前容器:

代码语言:javascript
复制
docker rm -f mysql

再次创建实例,数据卷映射规则还是和之前的一样

代码语言:javascript
复制
docker run -d -p 3306:3306 --privileged=true
-v /zzyyuse/mysql/log:/var/log/mysql 
-v /zzyyuse/mysql/data:/var/lib/mysql 
-v /zzyyuse/mysql/conf:/etc/mysql/conf.d 
-e MYSQL_ROOT_PASSWORD=123456  
--name mysql mysql:5.7
image-20220113235302559
image-20220113235302559

可以看到,之前的数据还是在的,防止了某些别有用心的人删容器跑路。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-04-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • docker安装mysql:5.7
  • 1、Docker Hub上面查找mysql镜像
  • 2、拉取镜像
  • 3、新建mysql容器实例
  • 4、新建my.cnf文件
  • 5、重新启动mysql容器实例再重新进入并查看字符编码
  • 6、新建库新建表插入中文测试
  • 7、删除当前容器实例并重新创建实例,之前的数据是否还在?
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档