В рамках проекта apgdiff подготовлена
платформонезависимая утилита для вычисления различий в структуре
нескольких БД PostgreSQL и формирования diff-файла, который может быть
использован для обновления схемы данных. В качестве источника выступают
sql-дампы баз, т.е. утилита не требует подключения к СУБД, а работает с
резервной копией данных. Утилиту удобно использовать для быстрого
переноса отлаженных в тестовой базе изменений схемы в рабочую базу.
Дополнительно присутствует функция смены кодировки текста. Код утилиты
написан на языке Java.
Полученный diff-дамп пригоден для прямой загрузки в PostreSQL
через интерфейс psql. Поддерживаются следующие выражения: ALTER TABLE,
ALTER VIEW, CREATE FUNCTION, CREATE INDEX, CREATE SCHEMA, CREATE
SEQUENCE, CREATE TABLE, CREATE TRIGGER, CREATE VIEW, SET search_path и
т.п. Источник
|