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

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

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

Структура и настройка каталогов GCP немного отличается от локальной директории и настроек файлов VM, но они оба 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. Предложения приветствуются в этом отношении.

1 ответ

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

Другие вопросы по тегам