docker里面pgadmin4自动备份pg数据库操作

打印 上一主题 下一主题

主题 969|帖子 969|积分 2907

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
一、需求

上线之后要求数据库数据天天备份,但是之前不停是人用pgadmin4 的界面手动点击备份,偶尔会忘记点击,就忘记备份了。每次下班前备份,除了会影响下班,还会忘记,就想都是脚本,手写一个自动备份的
二、实现

pg数据库是docker 安装的,pgadmin4也是docker安装的。 由于国产Linux服务器,没有网,直接安装各种依赖题目,烦烦烦....
实现逻辑:在pgadmin4 的容器里面使用下令备份数据库,在Linux服务器上开启crontab定时使命

三、具体步骤

1、pgadmin4安装

  
  1. docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/dpage/pgadmin4:8.9
  2. docker run  -d --name pgadmin4 --restart always -p 5080:80 \
  3. -e 'PGADMIN_DEFAULT_EMAIL=21At@123.com' \
  4. -e 'PGADMIN_DEFAULT_PASSWORD=123456' \
  5. -e 'PGADMIN_CONFIG_ENHANCED_COOKIE_PROTECTION=True' \
  6. -e 'PGADMIN_CONFIG_LOGIN_BANNER="Authorised users only!"' \
  7. -e 'PGADMIN_CONFIG_CONSOLE_LOG_LEVEL=10' \
  8. -v /root/data/pgadmin4:/var/lib/pgadmin \
  9. pgadmin:8.9
复制代码
2、备份脚本

  
第一步:在容器里面创建备份脚本/var/lib/pgadmin/back.sh

  1. #!/bin/sh
  2. d=$(date "+%Y-%m-%d_%H-%M")
  3. echo "${d}"
  4. # 免输入密码
  5. export PGPASSWORD="postgres"
  6. # 备份命令
  7. /usr/local/pgsql-16/pg_dump --file "/var/lib/pgadmin/storage/pga_user_21At_123.com/backup/database_${d}.backup" --host "127.0.0.1" --port "5432" --username "postgres" --role "postgres" --format=c --large-objects --encoding "UTF8" --verbose "postgres"
复制代码
第二步:在Linux服务器上创建脚本 /usr/local/bin/pg_back.sh

  1. #!/bin/bash
  2. echo "$(date) -- 开始备份数据库" >> /usr/local/logs/pg_back.log
  3. docker exec pgadmin4 /bin/sh -c "/var/lib/pgadmin/back.sh >  /var/lib/pgadmin/logs/pg_back.log 2>&1"
  4. echo "$(date) -- 备份完成! " >> /usr/local/logs/pg_back.log
复制代码

  3、开启定时使命

  1. # 编辑定时任务脚本
  2. crontab -e
  3. # 添加下面两行
  4. ------------------------------------------------------
  5. # 每天凌晨2点备份数据库
  6. 0 2 * * * /usr/local/bin/pg_back.sh
  7. ------------------------------------------------------
  8. # 查看是否编辑成功
  9. crontab -l
复制代码
四、测试验证

备份的文件目次:/var/lib/pgadmin/storage/pga_user_21At_123.com/backup/database_${d}.backup

文件权限题目授权
chown 999:999 file

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

灌篮少年

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表