Содержание

Предыдущий раздел

Не удается подключиться к базе данных (no pg_hba.conf entry for host "xxx.xxx.xxx.xxx"...)

Следующий раздел

Поиск медленных запросов

Перенос таблиц между базами данных

Задача

Есть базы данных db1 и db1. Нужно перенести данные таблицы customers из db1 в db2

Решение 1

Примечание

Данное решение можно применить, если в базе данных db2 таблица customers отсутствует

Сначала необходимо сохранить таблицу в файл customers.Fc.dump:

pg_dump --table=customers -Fc --file=customers.Fc.dump db1

Потом загрузить таблицу в базу данных db2:

pg_restore --dbname=db2 -Fc customers.Fc.dump

Этих двух несложных команд достаточно для выполнения задачи

Решение 2

Примечание

Данное решение можно применить, если в базе данных db2 таблица customers присутствует и надо её дополнить данными из базы db1

Данное решение отличается от первого наличием флага -a в команде сохранения таблицы в файл:

pg_dump -a --table=customers -Fc --file=customers.Fc.dump db1

дозагрузка данных в базу данных db2 осуществляется аналогичным способом:

pg_restore --dbname=db2 -Fc customers.Fc.dump

Этих двух несложных команд достаточно для выполнения задачи

Дополнительная информация

PostgreSQL Documentation: pg_dump

PostgreSQL Documentation: pg_restore

comments powered by Disqus