從PostgreSQL8.1升級到PostgreSQL9.1

 通常,不同主版本的 PostgreSQL 之間的內部存儲結構經常做改變,所以需要用 pg_dump備份數據,然後到新的服務器裏恢復它們。

建議使用新版本的 pg_dump 和 pg_dumpall 以便利用新版本的新特性和功能。

以下過程假設新老數據庫都在同一服務器上。

1.確保備份過程中和備份後沒有更新。
1)關閉所有連接數據庫的操作

2.備份數據庫
有2種辦法:
1)使用新版本(9.1)的pg_dumpall命令執行:
pg_dumpall > DB.sql

2)使用新版本(9.1)的pg_dump命令執行:(可以使用參數,進行壓縮)
pg_dump IPCCS > IPCCS.sqls
pg_dump NeuCRMS > NeuCRMS.sql

3.關閉8.1數據庫,啓動9.1數據庫

4.恢復數據
針對2種備份:
1)使用新的psql
psql -d postgres -f DB.sql

2)使用新的psql
psql -d IPCCS -f IPCCS.sql
psql -d NeuCRMS -f NeuCRMS.sql

5.整理
pg_dump 生成的轉儲文件並不包含優化器用於查詢規劃決策的統計信息。因此,恢復完之後,建議在每個已恢復的對象上運行 ANALYZE ,以保證良好的性能。

6.開啓服務
1)開啓apache服務
2)開啓asterisk服務
3)恢復定時任務(未執行的重新執行)

7.驗證平臺

還可以使用如下實現最短停業時間:
pg_dumpall -p 5432 | psql -d postgres -p 6543

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章