2013-05-08 137 views
0

在我的情況下,我有完整數據庫中的備份文件。現在我想恢復public模式中的某些特定表。將一個模式中的特定表還原到另一個模式postgresql

這些表已存儲在另一個架構中。任何可行的解決方案在那裏?以及如何操作

+0

你是如何取出口(自定義,純文本或「目錄」格式)? – 2013-05-08 10:45:52

+0

@a_horse_with_no_name我是postgresql中的newbi,因此可以顯示任何導出示例。以及如何操作 – Sathish 2013-05-08 10:51:07

+0

手冊中有幾個示例:http://www.postgresql.org/docs/current/static/backup-dump.html和http://www.postgresql.org/docs/current/靜態/ APP-pgdump.html – 2013-05-08 10:52:47

回答

1

不清楚要還原的表是從「公共」架構備份的,還是從不同的架構備份的。

如果你的備份存檔格式,而不是在一個純文本格式,你可以恢復單個表(見-n-t選項pg_restore)。據我所知,你不能將它們恢復到不同的模式。相反,您可以將它們恢復到原始模式與ALTER TABLE table_name SET SCHEMA new_schema;

由於您已經在目標架構中具有相同名稱的表,因此我希望您在從備份恢復之前必須重命名它們。從備份還原並將還原的表移動到「public」模式後,可以將這些表重命名爲其原始名稱。 PostgreSQL明白public.table_name和new_schema.table_name是不同的表。

相關問題