2017-08-02 10 views
0

コードファーストとEntity Frameworkを使用して、自分のWebアプリケーションを開発マシンで作成し、移行を使用して、実動サーバーとデータベースにベータ版アプリケーションに公開しました。実稼働サーバーへの移行の適用方法

私の開発システムでは、いくつかのマイグレーションを作成し、ローカルのdevデータベースに適用しました。 update-databaseを使用すると、ローカルのdevデータベースが更新されますが、どのように移行を本番サーバーデータベースに適用すればよいですか?

SQLを手動でプロダクションサーバーに適用するには、update-database -scriptを使用しています。より良い方法がありますか?

+0

可能な複製https://stackoverflow.com/q/10848746 – Kahbazi

答えて

1

ReadyRollのような実際のデータベース展開システムを使用するのが理想的です。つまり、組織のDBAロールを介して手動でコミットおよびデプロイできるSQLスクリプトを生成する必要があります。コードベースの移行では、予期せずデータベースに潜在的に悪いことが起こる可能性がありますが、SQLスクリプトでは、テーブルが破棄されようとしているか、置き換え不可能なデータがたくさんある列が簡単に削除される。

1

Web.configは、アプリケーションがどのデータベースを指しているかを設定します。本番環境を指し、同じEFコマンドを実行すると(migration.net、dotnet efデータベース更新)、プロダクション環境が更新されます。

私のセットアップでは、web.configを実稼働環境に配備していないため、常に運用データベースを指しています。プロダクションでEFアップデートスクリプトを実行すると、プロダクションが更新されてしまいます。

関連する問題