docker容器中postgresql备份

查看运行的容器:

docker ps
CONTAINER ID   IMAGE         COMMAND                  CREATED       STATUS       PORTS                                                      NAMES
991819540cb9   odoo:12.0     "/entrypoint.sh odoo"    8 weeks ago   Up 8 days    8071-8072/tcp, 0.0.0.0:8010->8069/tcp, :::8010->8069/tcp   odoo-docker_web_1
c7fd60695383   postgres:10   "docker-entrypoint.s…"   8 weeks ago   Up 5 weeks   0.0.0.0:5454->5432/tcp, :::5454->5432/tcp                  odoo-docker_db_1

进入目标容器:

docker exec -u root -it 容器名 /bin/bash
示例:docker exec -u root -it c7fd /bin/bash

docker 中,以root用户,创建备份目录,直接执行如下命令,

pg_dump -h localhost -p 5432 -U odoo xxx(数据库名) > /数据库dump备份文件目录/dump_XXX(数据库名)_bak_20220203.sql
示例:pg_dump -h localhost -p 5432 -U odoo GDXF > dump_GDXF_bak_20220203.sql

示例中的备份文件没有使用备份目录,代表备份文件dump_GDXF_bak_20220203.sql保存到本地目录中。

root@c7fd60695383:/# ls
bin  boot  dev  docker-entrypoint-initdb.d  docker-entrypoint.sh  dump_GDXF_bak_20220203.sql  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

退出容器

root@c7fd60695383:/# exit
root@kib8dt8iltxoq:~#

将docker容器里备份文件复制到宿主机:

root@kib8dt8iltxoq:~# docker cp c7fd60695383:dump_GDXF_bak_20220203.sql /root

注意:这里的容器ID要完整的

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值