Назад | Перейти на главную страницу

Перенести базу данных PostgreSQL в Google Cloud Platform (GCP), если структура каталогов отличается

У меня есть локальная виртуальная машина SUSE 12 sp3 с базой данных PostgreSQL 10 размером около 45 ГБ.

У меня также есть образ / экземпляр Google Cloud Platform (GCP) сервера SUSE 12 sp3 с базой данных PostgreSQL 10, в котором еще нет данных db.

Структура и настройка каталогов GCP немного отличаются от локального каталога и настройки файлов виртуальной машины, но они оба являются PostgreSQL 10. Мне больше нравится структура каталогов GCP setup / install /, поэтому я не хочу ее менять.

Я хочу передать как можно больше данных из локальной базы данных в базу данных GCP. Когда я закончу, базы данных должны быть идентичными, но структура каталогов будет другой.

Я новичок в GCP. Это тест-драйв. Моя новая база данных должна находиться в региональном хранилище (не в ближайшем, холодном или мультирегиональном).

Моя текущая стратегия:

  1. использовать pg_dumpall > db.out на моей старой локальной базе данных
  2. сохрани это db.out на наш файловый сервер Windows VM, к которому у меня есть доступ через подключенный диск на моей рабочей станции.
  3. на консоли GCP через мою рабочую станцию ​​перейдите в: Хранилище, выберите мою корзину, загрузите файлы и загрузите файл db.out в корзину, в которой находятся мои экземпляры.
  4. использовать psql -f db.out postgres чтобы загрузить данные, роли и т. д. в мой новый экземпляр GCP.

Это надежный способ сделать это? Будет ли это работать, несмотря на различную структуру каталогов? Есть способ сделать это лучше? Уловки или подводные камни?

Ссылка на сайт: http://www.postgresql.org/docs/current/static/app-pg-dumpall.html

(Я все еще ищу полезную ссылку GCP, отсюда вопрос.)

Обратите внимание, что под «структурой каталогов» я имею в виду структуру каталогов сервера. Структура каталогов изменилась, потому что я установил PostgreSQL 10 по-другому (как я хочу) на свой экземпляр GCP.

Спасибо!

PS - Это было на SO, но удалил его там и переместил вопрос сюда в надежде получить больше внимания. Я вижу, как перемещаются или передаются другие вопросы, но я не заметил способа сделать это, по крайней мере, с моим текущим уровнем доверия. Кроме того, я собирался поместить его в Администраторы баз данных сайта Stack Exchange, пока не увидел, что только два человека следят за тегом Google-Cloud. Предложения по этому поводу приветствуются.

Выгрузка базы данных в sql, передача ее на удаленный компьютер, а затем импорт базы данных через sql, как вы это сделали, - это совершенно нормальный способ добиться желаемого. Структура на диске действительно не должна быть проблемой.