2017-05-23 12 views
0

私はいくつかのプロジェクトに取り組んでおり、ソフトウェアの開発が進むにつれて、データベースは通常同じ方法で進化する必要があることに気付きました。私はこれをさまざまな方法で扱っていますが、これらはすべてこのように見えます。データベースをコードと同期させる

  • SCRIPTS_TO_DEPLOYというファイルがあります。
  • データベースの変更を行う必要がある場合は、$ TASK_ $ DESCRIPTION_ $ NUMBER.sqlという名前のファイルを作成します。それをあらかじめ定義されたフォルダに入れます。
  • $ TASK_ $ DESCRIPTIONをSCRIPTS_TO_DEPLOYの最後の行に追加します。
  • すべてのスクリプトを適切な順序でデータベースに適用するスクリプトを実行します。

私には2つの質問があります。 1)これは良いアイデアのようですか、それとも良い提案がありますか? 2)私は新しいプロジェクトを開始するたびにこのためのスクリプトを作成するために幾分過度のように感じる。おそらく私を助けることができるツールはありますか?

助けていただければ幸いです。

+0

これは大きな課題です。あなたのアプローチは合理的です。 –

+0

安全な側にするには、以前のバージョンに素早く戻すことができるロールバックスクリプトも必要です(デプロイメントの問題、プロードデータのみで発生する大きなバグなど) – JGH

答えて

3

ほとんどの企業とすべての大きなプロジェクトで、人々はあなたと似ています。手動であなたが試すことができます自動化を探しているしかし場合:

私は個人的にはフライウェイをお勧めします。簡単にセットアップして、期待どおりに動作します。

+1

両方を見ました。 Liquibaseはうまくいくかもしれませんが、Flywayは私の望むものとまったく同じようです。ありがとう! –

0

この目的のためのリキベースを使用してください。必要なすべての変更を追跡し、自動的にliquibaseファイルを実行するようにビルドを変更するliquibase xmlファイルを維持する

0

私は強く、それが管理し、データベース・スキーマの変更を適用するのに役立つツールの一種だあなたはLiquibase

を見てすることをお勧めします。

あなたは、Javaベースのプロジェクトについて、あなたが話しているソフトウェアの種類がわからない、簡単に統合することができます。

関連する問題