docker之MySQL安装与配置

1.下载MySQL镜像

docker pull mysql

在这里插入图片描述
查看msql镜像

docker  images

在这里插入图片描述

2.安装MySQL容器

创建文件夹mysql_docker用来保存mysql的本地配置信息
cd mysql_docker 下 再创建conf文件在这之下
创建配置文件
vim docker.cnf

# 服务端配置
[mysqld]
# 不使用高速缓存区来存放主机名和ip地址的对应关系
skip-host-cache
# 不把ip地址解析为主机名;与访问控制(mysql.user数据库)有关的检查全部通过IP地址行进。  
skip-name-resolve

# 忽略客户端的字符集,使用服务端的设置
skip-character-set-client-handshake
# 新数据库或数据表的默认排序方式
# unicode_ci准确性高,general_ci,性能高,但大多数情况下不会发生复杂的比较。
collation-server=utf8mb4_unicode_ci
# 新数据库或数据表的默认字符集
character-set-server=utf8mb4
init_connect='SET collation_connection =utf8mb4_unicode_ci' 
init_connect='SET NAMES utf8mb4'  

# 设置默认的时区,在docker中会少8小时,如果在创建容器时指定时区 这里可以不用配置
# default-time_zone='+8:00'
# 设置日记记录使用的时区,将它修改为系统时区,在docker中默认会差8小时(UTC)
log_timestamps=SYSTEM

vim mysql.cnf

# 客户端设置
[mysql]
# 设置mysql客户端默认字符集
# utf8mb4编码是utf8编码的超集,兼容utf8,并且能存储4字节的表情字符。
# 如果空间不足 ,一般情况可以使用utf8
default-character-set=utf8mb4

使用以下命令
将配置文件映射到本地主机

docker run -di --name mysql -p 3306:3306 --restart=always \ 
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-e TZ=Asia/Shanghai \
mysql:latest
docker run -di --name mysql -p 3306:3306 --restart=always -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -e TZ=Asia/Shanghai mysql:latest

将mysql的conf.d配置文件 映射到mysql_docker/conf 文件夹下,其他同理-e MYSQL_ROOT_PASSWORD=root 为设置mysql的(root)启动密码
TZ=Asia/Shanghai:给容器指定时区
提示:根据mysql规则,在my.cnf中有 !includedir /etc/mysql/conf.d/ 的命令
所以自定义的配置文件都在/etc/mysql/conf.d/ 下

查看mysql进程
docker ps -a
在这里插入图片描述

3.进入MySQL容器,登录MySQL

docker exec -it mysql bash
mysql -u root -p
在这里插入图片描述
检测时间是否正确
select now();
在这里插入图片描述
检测日记记录是否使用的系统时区
show variables like "log_timestamps";
在这里插入图片描述
检测字符集和字符排序是否配置成功
show variables like "char%";show variables like "%collation%";
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值