Docker Mysql 配置使用(windows server 2019)

前言
学习记录。Docker主机系统用的windows server 2019,部署docker mysql。部署过程中,注意数据挂载window container与linux container的命令区别。

1 Docker安装

参考:手把手教您在 Windows Server 2019 上使用 Docker

2 MySql部署

搜索查看可用 的mysql镜像
docker search mysql

在这里插入图片描述

2.1 拉取MySQL镜像

docker pull mysql

2.2 运行MySQL容器

docker run -di --name my-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

-p 端口映射(宿主机映射端口:容器运行端口)
-e 添加环境变量 (MYSQL_ROOT_PASSWORD设置root用户的密码)

参考:dockerhub mysql Environment Variables

2.3 容器中登陆MySQL

//连接容器
docker exec -it my-mysql /bin/bash
//登录
mysql -u root -p

//安装命令vim
apt-get install -y vim

3 MySql数据管理

Docker的数据管理有三种方式:volume、bind mount、tmpfs。(参考:Manage data in Docker
这里采用 bind mount方式:
(1) “D:\MysqlData:/var/lib/mysql” # mysql数据文件位置
(2) “D:\Mysql:/etc/mysql” # mysql配置文件位置

docker run --name my-mysql -v "D:\MysqlData:/var/lib/mysql" -v "D:\Mysql:/etc/mysql" -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql

docker run --name my-mysql -v /home/mysql/config:/etc/mysql -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=test -p 3306:3306 -d docker.io/mysql:5.7.29

注意:(window container)命令中-v 后面参数用双引号引用

4 MySql远程连接

查看用户列表:

SELECT User, Host FROM mysql.user;

mysql 8.0 默认使用 caching_sha2_password 身份验证机制。通过status查看mysql版本.
在这里插入图片描述
远程连接mysql,需要修改相应的加密规则:

create user 'root'@'%' identified by 'test123';
//授权远程连接
GRANT ALL ON *.* TO 'root'@'%';
//更新远程root用户密码及加密规则
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
//刷新
flush privileges;

//修改本地访问加密规则
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
//设置密码不过期
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
//刷新
flush privileges;

5 修改时区

修改时区DockerFile

FROM mysql AS base

RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

ENTRYPOINT ["docker-entrypoint.sh"]

EXPOSE 3306 33060
CMD ["mysqld"]

参考:
[1] Docker MySql
[2] Manage data in Docker
[3] mysql-8.0-Dockerfile

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值