Docker中网络和数据卷应用

容器方式mysql数据库服务和客户端,实现数据库的备份和恢复操作。

要求实验主机能够连接外网,docker安装好并设置好国内镜像加速器。

步骤如下:

1. 创建自定义的桥接网络

 1.1 查看创建结果

 1.2 查看创建的网络详细信息

 2. 运行数据库服务的容器,使用自定义的网络

 2.1 查看该容器的详细信息,可以看到数据卷信息

 3. 准备生成测试数据的MYSQL脚本

 在宿主机上准备一个sql脚本test.sql,内容如下:

#test.sql 创建库,创建表,插入一些数据内容可以自己确定
create database if not exists web1;
use web1;
create table if not exists ctinfo
(
  id  int,
  city  char(6),
  areano char(6)
);
delete from ctinfo;
insert into ctinfo values(1,'CQ','023'), (2,'CD','028'), (3,'GZ','020');

4. 运行数据库客户端,也使用自定义的网络,这样客户端可以用名称同服务端容器通信

4.1 方式1:连接后进入mysql控制台,可以用exit命令退出

 4.2 方式2:客户端连接后直接执行sql脚本。脚本可以参照上面的test.sql, 执行的语句放在命令行的-e 选项的参数中; source /sql/test.sql表示在控制台执行指定的脚本,执行结束后退出。

4.3 方式3:执行一条SQL语句后退出,SQL语句放在-e选项的参数中

查看库列表

 在指定库中执行SQL语句

 5. 备份数据库到宿主机特定目录下

 6. 删除数据库容器及其卷,然后准备进行恢复

 7.再运行一个数据库容器db1,用于恢复数据(名称可以可以不同)

7.1 查看数据库容器中的库,无前面创建的测试数据

在控制台执行 show databases;

确认无前面的测试数据,然后exit退出

 

7.2用备份的数据恢复容器db1的数据库

先停止数据库容器

然后执行恢复

再启动数据库服务的容器

 7.3再查看数据库容器中的库

 7.4 查看表ctinfo的内容

 说明数据恢复成功。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

努力代码不掉头发

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

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

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

打赏作者

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

抵扣说明:

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

余额充值