[英]automatic backup in postgresql creates the empty backup
我想使用 UNIX 中的 crontab 自動備份 PostgreSQL 數據庫。 我已經嘗試過,但它會創建 0 字節備份。
我的 crontab 條目是:
24 * * * * /home/desktop/myscript.sh
我的 sh 文件包含以下代碼:
pg_dump -U PostgreSQL -d test > b.backup
它將創建文件,但文件為空。 有什么解決辦法嗎? 有沒有辦法解決這個問題?
不要假設在 cron 作業中設置了任何環境變量; 明確:
/full/path/to/pg_dump -U postgres -d test > /full/path/to/b.backup
在收件箱中查找來自cron
的失敗報告的郵件。
您必須指定 pg_dump 的完整路徑
#!/bin/bash
BKPDATE=$(date +%d.%m.%Y-%H:%M:%S)
cd /var/lib/pgsql/12/backups
/usr/pgsql-12/bin/pg_dump -Fc dl_db > DBNAME_$BKPDATE.dmp --verbose 2> LOG_$BKPDATE.log
或者您必須將 PostgreSQL 的 bin 目錄添加到如下路徑:
vi /var/lib/pgsql/.pgsql_profile
export PATH=$PATH:/usr/pgsql-12/bin
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.