2010-10-04 35 views
2

我的舊iMac G5最近死了。我有一個PostgreSQL實例在那裏運行,並且我保留了備份。但是當我在我的新Macbook Pro中恢復它們時,我意識到由於字節序列差異,我無法進行恢復。編譯PostgreSQL的逆序排列

是否有任何編譯標誌,我可以傳遞給PostgreSQL的配置腳本在英特爾上使用顛倒的字節順序,允許我從備份中恢復,然後執行SQL轉儲,並將其恢復到默認的排序實例上?

實際上,我甚至不知道是否需要重新編譯PostgreSQL,也許有一些設置,有人可以指示我允許我執行還原?

回答

1

不可以。如果您的備份是使用pg_dump創建的,即使您使用二進制格式,它們也會獨立於endian。

如果您帶了數據目錄的副本(關閉數據庫或使用pg_start_backup()/ pg_stop_backup()),則需要在具有相同字節順序的計算機上進行恢復。您可能最好將其導入某個具有相同字節序的虛擬機中,然後使用pg_dump從那裏轉儲並重新加載到新計算機上。

如果你從磁盤備份而沒有關閉PostgreSQL,那麼基本的東西就成立了,除非你還必須嘗試從損壞的備份中恢復。根據您在數據庫上擁有多少流量以及您有多幸運,這可能只需要很少的工作或幾百小時或更長時間的工作。