Postgresql

僅從使用 wal-e 進行的基本備份恢復 Postgres

  • November 7, 2019

我有一個通過 wal-e 進行的 postgres 基本備份。是否可以僅使用基本備份來恢復和啟動數據庫?我無法使用restore_commandin,recovery.conf因為 wal 文件已存檔到深冰川。

使用 wal-ebackup-fetch命令複製基本備份並啟動數據庫後,我得到以下日誌:

2019-11-05 11:28:26 UTC [7417]: user=,db=,app=,client= LOG:  database system was interrupted; last known up at 2019-10-31 22:13:32 UTC
2019-11-05 11:28:26 UTC [7417]: user=,db=,app=,client= LOG:  creating missing WAL directory "pg_xlog/archive_status"
2019-11-05 11:28:26 UTC [7417]: user=,db=,app=,client= LOG:  invalid checkpoint record
2019-11-05 11:28:26 UTC [7417]: user=,db=,app=,client= FATAL:  could not locate required checkpoint record
2019-11-05 11:28:26 UTC [7417]: user=,db=,app=,client= HINT:  If you are not restoring from a backup, try removing the file "/var/lib/postgresql/9.6/main/backup_label".
2019-11-05 11:28:26 UTC [7415]: user=,db=,app=,client= LOG:  startup process (PID 7417) exited with exit code 1
2019-11-05 11:28:26 UTC [7415]: user=,db=,app=,client= LOG:  aborting startup due to startup process failure
2019-11-05 11:28:26 UTC [7415]: user=,db=,app=,client= LOG:  database system is shut down

是否可以僅使用基本備份啟動數據庫並將其置於一致狀態?

我有一個通過 wal-e 進行的 postgres 基本備份。

因此,我建議您最好向創建wal-e 的人提出您的問題。我自己從來沒有用過,但是…

是否可以僅使用基本備份啟動數據庫並將其置於一致狀態?

簡短的回答:沒有。

基本備份獲取數據庫的“快照”。該快照取自正在執行的數據庫,它本身不太可能保持一致。

拍攝快照後數據庫中發生的任何事情都會寫入 WAL 文件,因此,為了進行任何有意義的數據庫恢復,您也需要這些文件。

引用自:https://dba.stackexchange.com/questions/252577