Лучший общий инструмент для управления дельтами базы данных - PullRequest
4 голосов
/ 26 ноября 2010

Мы храним наши файлы схемы mysql в системе контроля версий.Мы сохраняем текущие файлы base и delta , и всякий раз, когда выпускается новая версия, мы берем файлы delta, объединяем их в базу, очищаем их и создаем соответствующие сценарии миграции для производственных данных..

У нас есть достаточно хороший набор скриптов для этого.У меня вопрос - есть ли сторонняя организация, которую я могу использовать для поддержки этого процесса, вместо наших собственных сценариев?

Примечание - я ищу инструмент, который не требуетмне изменить весь процесс разработки.Инструменту должно быть все равно, если я разрабатываю приложение на Ruby / Java / .Net.

Ответы [ 6 ]

2 голосов
/ 26 ноября 2010

Это то, что Liquibase делает?Не использую это лично, но я думаю, что один из других отделов в компании.Хотя это может быть излишним для того, что вы ищете.

1 голос
/ 29 ноября 2010

Попробуйте это: http://bitbucket.org/idler/mmp/wiki/Home Написан на PHP-5.3 и не заботится о том, что вы используете в своем проекте.

Создание сценариев миграции (php-классы) и выполнение миграций.

(извините, если мой английский не в порядке)

0 голосов
/ 29 ноября 2010

Если вы ищете инструмент для создания дельт, MySQL Compare может помочь. В раннем доступе использовать его можно совершенно бесплатно.

http://www.red -gate.com / ОБЪЯВЛЕНИЯ / viewtopic.php? Т = 11053

0 голосов
/ 26 ноября 2010

Большая часть программного обеспечения, которое я видел для управления "миграциями" БД, привязано к определенной среде. Многие из них тесно связаны с уровнем абстракции ORM, с которым они взаимодействуют. Это может быть хорошо, если вы только когда-либо обращаетесь к данным через ORM, но это не всегда так. Я также сталкивался с ситуациями, когда программное обеспечение ORM хочет управлять всей схемой, чего я не хочу, потому что я делаю создание представлений / таблиц, которые работают в сочетании с существующей установкой. Это делает ORM бездействующим и, как следствие, библиотеку миграции, которая опирается на этот ORM.

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

0 голосов
/ 26 ноября 2010

Я начал использовать SQLyog для получения различий в базе данных, у него отличный графический интерфейс, но я еще не дошел до его автоматизации со скриптами.

0 голосов
/ 26 ноября 2010

Ruby on Rails делает это с помощью ActiveRecord Миграции . Вы можете взглянуть на их источник. Также инструменты миграции базы данных Google.

Rails использует совершенно другой подход. Вместо создания сценариев миграции из дельт схемы, вы пишете сценарии миграции по мере развития схемы и применяете их к рабочей базе данных в соответствии с требованиями кодовой базы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...