2

ウェブサイトのデータベースの変更が必要な機能リクエストを完了しました。

そのデータベースの変更をソフトウェア開発ライフサイクルのテスト段階と実稼働段階に伝播する標準的な方法は何ですか。私の職場の人々は、このための手順は整っていませんが、そうすべきだと提案しました.

バージョン管理されたコンテキスト内でこれを行う一般的な方法は何ですか?

サイトを起動する前に、psql を介してプロジェクト内に含まれる SQL スクリプトを実行するように、README にテスター/デプロイ担当者への指示を含めることを考えていました。しかし、そのスクリプトを子孫ブランチに保持したくありませんよね? それとも私ですか?データベースへのすべての変更を何らかの方法で集中化する必要があるというのが答えですか?

ここでの問題の一部は、この質問をするより正確な方法がわからないため、Google で検索するのが難しいことです。どんなアドバイスでも大歓迎です、ありがとう!

4

1 に答える 1

3

ソース/バージョン管理とSQL DDLの伝播は、解決が難しい問題です。Red Gate の SQL Source Controlなどのサード パーティ製ツールは役に立ちますが、高価になる可能性があります。私の経験では、さまざまな開発ショップが社内で開発された手動プロセスを使用する傾向があります。これは、DDL のエクスポートとスクリプトの保存を意味し、SQL DDL をリビジョン管理システムが使用されているものに押し込むことを意味します。(Git、SVN、CVS など) また、一部のショップでは単純に圧縮して (ただし空の) データベース全体を保管しているのを見てきました。これはかなり中途半端なアプローチですが、うまくいきます。

上記のようなツールを使用するのが最善の策ですが、DDL スクリプトのエクスポートとバージョン管理も機能します。はい、DDL を何らかのリビジョン管理システムで一元化する必要があります。自動化されたビルド システムを使用する場合は、バージョン管理された DDL スクリプトをデータベースに対して実行することもできます。どのアプローチを選択するにしても、最も重要なことは、一貫性を保つことです。

始めるのに役立ついくつかのリソース: (これは、以下のリンクを生成した私の Google 検索です。)

于 2014-07-07T17:11:49.323 に答える