使用docker安装mysql数据库并数据挂载

关于数据挂载的说明:生产环境中,我们的每个服务都会经常遇到升级等维护行为,如果使用docker对mysql进行管理,容器化的管理方式,无疑是一种非常便捷的方式,但是操作过程中,数据会承担很大的风险,便于方便管理以及操作便捷,可以将容器内的数据挂载至容器外的某一目录下。

关于数据库架构化的部署:比如主从,分库等,会涉及到多容器之间的配置,可以借助一些容器的管理工具 比如k8s,或者使用数据挂载等方式解决。

下面是关于:单机版的mysql安装部署+数据挂载。

1、首先安装docker,以及docer的基本配置

包括镜像加速等,相关教程前面有讲过,可以参考

docker安装部署和卸载_咛果果的博客-CSDN博客

2、下载mysql的镜像,我们这儿选择5.7版本

[root@localhost mysql]# docker pull mysql:5.7

3、创建mysql容器同时挂载数据

docker run -d --restart=always --name mysqltest -p 3310:3306 \ 
-v /home/mysql/data:/var/lib/mysql \
-v /home/mysql/conf:/etc/mysql \
-v /home/mysql/log:/var/log/mysql \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.7 \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_general_ci

以上是安装指令脚本,下面对各个配置进行讲解

-d 后台运行

--restart=always 设置开机重启

--name mysqltest 设置该容器的名称,这儿是自定义,可以自由备注

-p 设置端口号映射,容器外端口:容器内端口

-v 卷挂载 (容器外目录:容器内目录)这儿我们对数据目录、配置文件目录和日志目录进行了挂载,类似这些需要被持久化的数据,需要的存储至容器外,避免容器删除后数据的丢失

-e msyql的环境配置

4、测试

使用数据库连接工具连接mysql,如navcat、sqlyog等

ip:服务器宿主机的ip地址

端口:3310,用户:root,密码:123456

5、验证数据挂载是否成功

基本思路:创建一个新数据库,然后去宿主机的/home/mysql/data目录下查看是否有该库的数据记录,也可以查看日志文件目录内是否有日志文件产生。

  • 4
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
使用Docker安装MySQL5.7可以按照以下步骤进行操作。 1. 首先,拉取MySQL5.7镜像。你可以使用以下命令下载最新版本MySQL5.7镜像: ``` docker pull mysql:5.7 ``` 如果你想下载指定版本MySQL5.7,可以使用命令: ``` docker pull mysql:5.7.34 ``` 2. 创建宿主机的数据、配置和日志目录。你可以使用以下命令创建相应的目录: ``` mkdir -p /usr/local/docker_data/mysql/data mkdir -p /usr/local/docker_data/mysql/conf/conf.d mkdir -p /usr/local/docker_data/mysql/conf/mysql.conf.d mkdir -p /usr/local/docker_data/mysql/logs ``` 3. 运行MySQL容器。你可以使用以下命令来启动一个名为mysql5.7的容器,并将宿主机的目录挂载到容器中: ``` docker run --name mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d -v /usr/local/docker_data/mysql/data:/var/lib/mysql -v /usr/local/docker_data/mysql/conf:/etc/mysql/ -v /usr/local/docker_data/mysql/logs:/var/log/mysql mysql:5.7 ``` 在CentOS 7上,如果目录挂载失败,你可以添加`--privileged=true`参数给容器,让容器拥有真正的root权限: ``` docker run --privileged=true --name mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d -v /usr/local/docker_data/mysql/data:/var/lib/mysql -v /usr/local/docker_data/mysql/conf:/etc/mysql/ -v /usr/local/docker_data/mysql/logs:/var/log/mysql mysql:5.7 ``` 这样,你就成功地使用Docker安装并运行了MySQL5.7数据库。你可以使用Navicat或其他工具连接到MySQL数据库进行开发和管理。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Docker安装MySQL5.7和8](https://download.csdn.net/download/weixin_38627769/14886408)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Docker 安装MySQL 5.7(超详细文图说明及MySQL配置)](https://blog.csdn.net/weixin_43956484/article/details/116499061)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咛果果

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值