Ubuntu
備份 PostgreSQL - 提示輸入密碼
作業系統:Ubuntu Xenial 16.04 LTS
PostgreSQL 版本:9.5.4
我正在嘗試在我的伺服器上設置自動數據庫備份,每次執行時
pg_dump
,它都會告訴我沒有提供密碼。這是我用來測試的命令:pg_dump --host $DB_HOST --port 5432 --username $DB_USER --no-password --format custom --blobs --verbose --file ~/backups/postgresql/test.backup $DB_NAME
我所有的環境變數都工作得很好。為了向 PostgreSQL 提供密碼,我
.pgpass
在~/.pgpass
. 這是它的樣子:主機名:埠:數據庫:使用者名:密碼 $ DB_HOST:5432: $ 數據庫名稱: $ DB_USER: $ DB_PASS
該文件具有指南
0600
中指定的權限。然而,由於某種原因,它沒有在我執行時使用密碼。我在網上查看了其他答案和多個指南,但仍然無法弄清楚問題所在。pg_dump
任何幫助將不勝感激。
您需要在 中包含文字值
~/.pgpass
,而不是像$DB_HOST
.如果您需要環境變數,那麼您可以使用 libpq(PostgreSQL 客戶端庫)支持的環境變數,例如
$PGDATABASE
或$PGPASSWORD
. 還有很多其他的。您根本不需要~/.pgpass
使用它們。