Перемещение табличных пространств и таблиц Postgres по экземпляру EC2 - PullRequest
3 голосов
/ 20 августа 2010

У меня есть база данных postgres, работающая на экземпляре Amazon EC2.У меня есть несколько табличных пространств, созданных для некоторых ежемесячных таблиц, так что каждая таблица находится в отдельном табличном пространстве.Чтобы получить максимальную производительность, я создал каждое табличное пространство на отдельном томе Amazon EBS.

Я хочу переместить некоторые из этих таблиц в другой экземпляр и базу данных.Я объясню это одним примером.Скажем так.

  1. У меня есть экземпляр EC2 A с настройкой postgres, как описано выше.

  2. У меня работает еще один экземпляр Amazon B, и я установил на него postgres какхорошо.

  3. Я хочу создать такую ​​же структуру таблиц для некоторых таблиц, представленных в A на B. Я хочу отделить тома от экземпляра A и присоединить его к экземпляру B.

  4. Кроме того, я хочу создать табличные пространства в экземпляре B, которые будут указывать на вновь подключенные тома.

  5. И когда я запускаю это зановосоздал postgres, я ожидаю увидеть таблицы, заполненные данными из этих томов (базы данных).

  6. наконец я удалю эти таблицы из A

Я знаю, что пишу ржаво, но не могу найти лучшего способа задать вопрос.

Возможно ли что-то подобное?Есть ли какие-нибудь указатели для достижения чего-то подобного?

1 Ответ

1 голос
/ 21 августа 2010

номер

Данные в каталоге табличного пространства являются только данными. Вам также нужны метаданные, которые находятся в таблицах в схеме pg_catalog, а также информация из pg_clog и pg_xlog для доступа к ним.

Если вы хотите перемещать объекты по томам, вы должны переместить всю установку сразу (все табличные пространства, включая pg_default). В противном случае вам нужно использовать pg_dump / pg_restore для передачи данных.

...