Migration
pg_upgrade 和表空間(postgres 9.2 到 9.3)
我安裝了 9.2,其表空間位於:
/var/lib/postgresql/9.2/main
和
/opt/postgres/9.2/second
不幸的是,它們位於不同的文件系統上。
這是 9.2 的 Debian 軟體包安裝。9.3 將從原始碼編譯。由於我看到的每個範例都沒有顯示如何處理第二個和第三個表空間,所以有人有正確的命令行嗎?是否
pg_upgrade
採取多個-d
和-D
選項?目的是讓數據保留在相同的文件系統上並使用連結模式。
PostgreSQL 在每個表空間中創建以 PostgreSQL 版本命名的子目錄。
pg_upgrade
因此,不需要告訴AFAIK對錶空間採取特殊措施。它將使用與原始數據庫相同的表空間,但不會因為在表空間根目錄中使用不同的子目錄而發生衝突。需要注意的是,如果您的 9.2 數據目錄中有表空間,這將不起作用。你一開始就不應該這樣做。在進行升級之前,將表空間移動到 9.2 數據目錄之外的位置。