2011-09-15 12 views
1

ソフトウェアパッケージの次のバージョンを展開するときによく発生するのは、データ構造の一部が変更されることです。 Sqlデータベースを使用している場合、適切な一連の変更と更新が必要な場合があります。私は何年もの間、これをやるための多くの方法を見てきました。たとえば、RoRには移行という概念があります。しかし、私がこれまで行ってきたことは、維持するのに少し毛づくようだ、あるいは他の欠点があります。魔法の世界でMySqlテーブル定義をソフトウェア更新で最新のスマートな方法で更新できますか?

私は、既存のデータベースのレイアウトから移動するために自動的に整理されている必要など何変更、更新、何かを希望スキーマ定義を指定し、持つことができると思います...

何最新の方法論/実践/パターンは、ソフトウェアの更新でテーブル定義の変更を展開するために存在しますか?このようなことに対して、MySql固有のツール/スクリプト/コマンドが存在しますか?

答えて

2

flywayまたはdbdeployを調べましたか? FlywayはJavaに特化していますが、私はどのDBでも動作し、dbdeployはより多くの言語をサポートしており、複数のデータベースもサポートしていると思います。

+0

素晴らしいdbdeployに加えて、私は[liquibase](http://www.liquibase.org)を見ることをお勧めしたいと思います。 – zerkms

+0

飛行路は素晴らしいようですが、要件としてmavenを持つことはおそらく致命的な欠点です。 .shスクリプトはちょうどjarを呼び出しているので、コマンドラインツールがjava内で直接使用できるかもしれないと思う。それを調べなければならない。 – jlarson

+0

とdbdeployはかなり深く依存しているようです。 – jlarson

関連する問題