代码拉取完成,页面将自动刷新
原理:Docker容器中安装postgres-client和mysql-client,并加入本备份工具,增强备份功能。
docker run -d \
--name backup-db \
--restart=always \
-p 9977:9977 \
-v /opt/backup-db-files:/app/backup-db-files \
jeessy/backup-db
postgres
说明 | 备份脚本 |
---|---|
备份单个 | PGPASSWORD="password" pg_dump --host 192.168.1.11 --port 5432 --dbname db-name --user postgres --clean --create --file #{DATE}.sql |
备份全部 | PGPASSWORD="password" pg_dumpall --host 192.168.1.11 --port 5432 --user postgres --clean --file #{DATE}.sql |
还原 | psql -U postgres -f 2021-11-12_10_29.sql |
mysql/mariadb
说明 | 备份脚本 |
---|---|
备份单个 | mysqldump -h192.168.1.11 -uroot -p123456 db-name > #{DATE}.sql |
备份全部 | mysqldump -h192.168.1.11 -uroot -p123456 --all-databases > #{DATE}.sql |
还原 | mysql -uroot -p123456 db-name <2021-11-12_10_29.sql |
支持webhook, 备份更新成功或不成功时, 会回调填写的URL
支持的变量
变量名 | 说明 |
---|---|
#{projectName} | 项目名称 |
#{fileName} | 备份后的文件名称 |
#{fileSize} | 文件大小 (MB) |
#{result} | 备份结果(成功/失败) |
RequestBody为空GET请求,不为空POST请求
Server酱: https://sc.ftqq.com/[SCKEY].send?text=#{projectName}项目备份#{result},文件名:#{fileName},文件大小:#{fileSize}
Bark: https://api.day.app/[YOUR_KEY]/#{projectName}项目备份#{result},文件名:#{fileName},文件大小:#{fileSize}
钉钉:
自定义关键词
, 输入的关键字必须包含在RequestBody的content中, 如:项目备份
Webhook地址
{"msgtype": "text","text": {"content": "#{projectName}项目备份#{result},文件名:#{fileName},文件大小:#{fileSize}"}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。