Как скопировать все данные без схемы из одной базы данных в другую в Postgres?

#database #postgresql #psql

#База данных #postgresql #psql

Вопрос:

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

Я не могу использовать метод копирования шаблона, потому что он также перезаписывает схему. CREATE DATABASE [Database to create] WITH TEMPLATE [Database to copy] OWNER [Your username];

Я вполне могу использовать psql testdb -c 'COPY tableName TO stdout' | psql targetdbs -c 'COPY tableName FROM stdin' для копирования данных таблица за таблицей, как это, но мне нужно скопировать все таблицы за один снимок.

Комментарии:

1. pg_dump с --data-only

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

3. Если вы можете запустить copy , вы можете использовать pg_dump