Я создал (пространственную) базу данных у себя дома, которая составляет несколько гигабайт, и я хочу переместить всю базу данных, как она есть, с одного компьютера на мой рабочий компьютер.
Ничего страшного, я создам новый экземпляр postgresql / postgis db на своем рабочем компьютере. Пользователи БД могут иметь или не иметь одинаковые имена на обоих компьютерах.
Является ли это возможным? Что я должен быть осторожным? Как я могу сделать это безболезненно?
Я использую postgresql v9.1.5 с расширением postgis. Ubuntu12.04 (ядро 3.2.0-31)
postgresql
user528025
источник
источник
Ответы:
Вы можете запустить дамп базы данных:
и затем импортируйте обратно в PostgreSQL на вашем рабочем компьютере. Это займет некоторое время, и результирующий файл, даже если он сжат, может находиться в диапазоне гигабайт, но должен быть достаточно маленьким, чтобы помещаться на USB-ключ.
На вашем рабочем компьютере создайте новую базу данных и загрузите дамп:
Если у вас быстрое соединение (или вы можете потратить время), вы даже можете перенести базу данных через Интернет через зашифрованное соединение SSH или с помощью таких инструментов, как rsync.
источник
pg_dumpall - самый безопасный способ сделать это. В любом случае, я бы порекомендовал взять дампал до миграции. большая проблема в том, что восстановление может занять некоторое время, если оно большое.
Вы также можете скопировать каталог данных, предпочтительно после остановки вашего сервера (вы можете использовать pg_start_backup () вместо остановки, но просмотреть все документы на момент восстановления до того, как вы пойдете по этому маршруту. Этот маршрут допускает почти нулевое время простоя) Переместите однако. Также обратите внимание, что вы можете сделать это только в том случае, если архитектура ОС и ЦП одинакова в обеих системах. Таким образом, вы не можете перейти с Windows на Linux или с i686 на x86-64. Проверьте версии ядра ОС также по порядку. чтобы убедиться, что системы совместимы.
источник