Встречается на собеседованиях • сегодня
Как копировать данные с одной БД в другую в PostgreSQL
Для копирования данных между БД в PostgreSQL можно использовать несколько подходов:
- pg_dump и psql (для полного копирования):
bash
pg_dump -U user -h source_host source_db | psql -U user -h target_host target_db- COPY команда (для таблиц):
sql
-- На источнике
COPY table_name TO '/tmp/table_name.csv' WITH CSV HEADER;
-- На цели
COPY table_name FROM '/tmp/table_name.csv' WITH CSV HEADER;
text
3. **dblink расширение** (для прямого копирования):
```sql
-- Установить расширение если нужно
CREATE EXTENSION IF NOT EXISTS dblink;
-- Пример копирования данных
INSERT INTO target_table
SELECT * FROM dblink('dbname=source_db user=user password=pass host=source_host',
'SELECT * FROM source_table') AS t(column1 int, column2 text);- Foreign Data Wrappers (для постоянного доступа):
sql
CREATE EXTENSION postgres_fdw;
CREATE SERVER foreign_server FOREIGN DATA WRAPPER postgres_fdw
OPTIONS (host 'source_host', dbname 'source_db');Выбор метода зависит от объема данных, частоты копирования и требований к производительности. Для разовых операций подойдут первые два метода, для регулярных - последние.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы