1

Ребята, мне нужно сравнить две разные базы данных, работающие в PostgreSQL. Я хотел бы использовать какой-то инструмент для автоматического извлечения диаграммы, я пробовал pgadmin3 и pgdesigner, но они кажутся несовместимыми с postgre, который я использую. Какой инструмент я могу использовать, чтобы сделать это?

Редактировать 1: Под несовместимостью я подразумеваю, что они не могут даже открыть базы данных, которые у меня есть, поскольку они слишком новые.

Редактировать 2: Я могу открыть как дампы, старую и новую версии, на самом деле они есть в форме .sql. Думаю, оба предоставленных вами инструмента справятся с задачей. Я буду тестировать их на работе завтра и обновлять здесь. Большое спасибо.

1 ответ1

1

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

Сначала вы должны иметь возможность запустить сервер базы данных для каждой базы данных. Единственный способ прочитать базу данных PostgreSQL - через сервер базы данных PostgreSQL.

Не ясно, в какой форме находятся базы данных, вы не указали это.

Если это дампы, просто установите достаточно новый PostgreSQL для дампов и восстановите их до новой установки. Используйте отдельную машину или просто установите новый Pg вместе со старым. Вы не упомянули свою платформу, ОС / версию и т.д., Поэтому я не могу помочь в этом.

Если они являются копиями самого каталога данных PostgreSQL и были правильно взяты с остановленного сервера, вы должны получить ту же версию (не более новую, не более старую) для той же ОС и архитектуры и запустить сервер из базы данных. Так что, если база данных, скажем, из 32-битной Windows PostgreSQL 9.2, вам понадобится 32-битная версия PostgreSQL 9.2 для Windows, чтобы загрузить базу данных, больше ничего не поделаешь. Запустите сервер с помощью pg_ctl .

Как только вы сможете подключиться к обоим серверам, вы сможете использовать существующие инструменты для сравнения двух БД. Когда дело доходит до отображения структуры БД, я считаю SchemaSpy весьма полезным. Для сравнения рассмотрим apgdiff ; это будет работать с дампами, но требует, чтобы дампы были в правильном формате.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .