Docker下载并启动Mysql

1.拉取mysql镜像
docker pull mysql:5.7
2.运行mysql镜像
2.1 使用mysql:5.7版本镜像启动
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d --name mysql01 -v /root/data:/var/lib/mysql --restart=always mysql:5.7 --lower-case-table-names=1
  1. -p:端口映射,后面紧接着的3306:3306是要进行映射的端口,冒号左边的3306是宿主机的端口号,冒号右边的3306是mysql容器的端口,-p的作用是将mysql容器的3306端口映射到宿主机的3306端口,这样就可以通过宿主机的ip+映射到宿主机的3306端口就能连接上启动的mysql容器。
  2. -e:后面紧接着的MYSQL_ROOT_PASSWORD=root,是指定mysql容器的root用户登陆密码。
  3. -d:表示以守护进程的方式启动服务,服务在后台运行。
  4. –name:指定启动后的容器名。
  5. -v:持久化数据,将容器的数据交给宿主机管理,主要也是为了同步数据,防止容器被删除后数据找不到的问题。/root/data 这是宿主机的数据存放路径;/var/lib/mysql 这是mysql容器存放数据的地方。
  6. –restart=always :启动后服务总是运行的。
2.2 使用mysql:8.2.0 版本镜像启动
docker run -d --restart=always -e MYSQL_ROOT_PASSWORD=mysqlroot -p 3306:3306 --name mysql \
-v /etc/localtime:/etc/localtime:ro \
-v /root/data/mysql/data:/var/lib/mysql \
-v /root/data/mysql/log:/logs \
-v /root/data/mysql/conf/my.cnf:/etc/mysql/my.cnf mysql:latest \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_general_ci \
--default-authentication-plugin=mysql_native_password \
--lower-case-table-names=1
  1. -v /etc/localtime:/etc/localtime:ro:设置时区。
  2. -v /root/data/mysql/data:/var/lib/mysql:挂载数据目录。
  3. -v /root/data/mysql/log:/logs:挂载日志目录。
  4. -v /root/data/mysql/conf/my.cnf:/etc/mysql/my.cnf:挂载配置文件目录。
  5. –character-set-server=utf8mb4:设置数据库字符集。
  6. –collation-server=utf8mb4_general_ci :设置数据库排序规则。
  7. –default-authentication-plugin=mysql_native_password:设置数据库密码策略。
  8. –lower-case-table-names=1:设置数据库表名忽略大小写。
3.连接mysql

运行玩镜像后,会返回一个容器id,再通过docker ps命令查看启动的容器信息。
在这里插入图片描述
容器启动完成后就可以通过宿主机的ip+运行命令时映射的端口联连接数据库了。
在这里插入图片描述

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值