web-dev-qa-db-ja.com

データベースオブジェクトのバージョン管理

開発者が取り組んでいるデータベースが大きすぎます(データベースオブジェクトがたくさんあります)。 dbオブジェクトの変更を制御する必要があります(変更管理)。私たちの会社では、dbの変更のみを担当する人物は存在できません。したがって、標準コードのバージョン管理のようなデータベースオブジェクトのソースセーフが必要ですが、データベースに関連し、データベースとスクリプトを同期できます。最高のものは何ですか。信頼性が高く、安価で、機能的-2つを選択してください:)

19
garik
15
Remus Rusanu

ApexSQLバージョン 、Visual Source Safe、Subversion、Team Foundation Server、SourceGear Vault、MSSCCI準拠のバージョン管理システムをサポート

9
  • Visual Studioの通常のデータベース/サーバープロジェクト
  • RedGate SQLソース管理

どちらもTFSおよびSVN/Hgと互換性があります

8
Oleg Dok

私たちのチームは、Visual Studio 2010データベースプロジェクトを使用しています。私たちのプロジェクトのほとんどは、シームレスに統合するソース管理をMS Team Foundation Serverに依存していますが、最近、他のソースシステムでも(少し苦労して)機能することがわかりました。 Perforceにはそのようなプロジェクトが1つあります。 VS2010のビルドおよびデプロイ機能は非常にうまく機能し、PowerShellを使用して自動化できます(たとえば、デプロイメントをテストするためにベースラインを復元したい場合に非常に役立ちます)。たとえば、完全な展開ターゲットまたは差分展開ターゲットが必要な場合は、さまざまな構成を作成できます。

データの配置やその他のスクリプトをデプロイメントに含めることもでき、それらもバージョン管理の対象になります。データベースオブジェクトは、作成したスクリプトをチェックインすることによって管理することも、より直感的なスキーマビューを使用することもできます。すべての依存関係が追跡されます。すべてのプロパティ、ファイルとファイルグループ、権限など、SQL Server DBのあらゆる側面をソース管理下で管理できます。標準と慣行を維持するのに最適です。ビジュアルデータベース差分ツールがあり、この機能をRed-Gateで実装することを好みますが、VS2010でデプロイメントを作成するのにグラフィカル比較を使用せず、MSビルドに慣れてきて、それらがどれだけ機能するかがわからなくなってきました。 DBプロジェクトをクリーンな状態に保つのに役立ちます。

残念ながら、このレベルの深さでは、データベースをソース管理下に置くための他のシステムと比較できません。私は「開発者の規律」でかなり作業してきましたが、もはやそのシステムを考慮していないので、そのシステムに戻りたくありません。また、SVNへのSSMSプラグインを使用した短いスティントがありましたが、それはかなり前のことでした。そのため、展開スクリプトを生成するためにRed-Gateを使用する必要がありました。

5
FloorDivision

ソース管理ツールは、VSSの代わりになるように設計されており、SQL Server Management Studioと統合できます。

1
Windy

私たちのシステム Sql Historian は、dbオブジェクトの最新バージョンをSVNまたはTFSに自動的に維持することにより、「開発者の規律」の必要性を排除します。開発者の現在のワークフローに対して透過的になるように設計されているため、時間のロスやスタッフからの苦情なしに、バージョン管理の完璧な記録を得ることができます。

0
jlee-tessik

MS-SQLに対するデータベース強制変更管理ソリューションをリリースしました。

はい-私はDBmaestroで仕事をしているときに偏見があります

私たちの製品がお客様のニーズに応えると信じています。ベテランデータベースの専門家であるベンテイラーがLinkedInに投稿したデータベース強制管理ソリューションに関する包括的な公平なレビューを読むことをお勧めします https://www.linkedin.com/Pulse/article/20140907002729-287832-solve-database-change-mangement-with-dbmaestro

0
Uri

DB Ghostは、データベースをバージョン管理するための優れたツールです。同期、比較、デルタ、コピー、ビルド、スクリプト...そして、自動化されたジョブのコマンドラインを介して実行できます。

http://www.dbghost.com/

0
Darian Miller

SQL Server 2008 R2(およびそれ以前)ソース管理FYI:データベースオブジェクトはソース管理プロバイダーによって直接保護されていません…つまり、規律ある規則を使用する必要があります...他のツールを使用してデータベースオブジェクトに変更を加えることができるためです- http://technet.Microsoft.com/en-us/library/ms173550%28v=sql.105%29.aspx

MSデータベースプロジェクトとは異なり、RedGate SQLソースコントロールはデータベースをバージョンコントロールシステムに接続します… http://www.red-gate.com/products/sql-development/sql-source-control/

0
Bohemian