2009-05-29 4 views
0

現在、私のWebサイトは、SQL Serverデータベースを使用してASP.NET Webformsで書かれています。 ASP.NET MVCアプリケーションをビルドする予定です。なぜなら、それはより優れているからではなく、技術を学びたいからです。私の質問は、データベースに特有のものです。私は、データベースを作成し、SQLデータベースへのWebインターフェイスのインポート機能を使用してSQLテーブルをインポートするか、 "ローカル"データベースMDFファイルを使用することができます。私は、バックアップと対処がより簡単になるので、MDFファイルを使用する考えが好きです。私のウェブサイトは、多くのトラフィックを得ることはできません...事実私は唯一のユーザーになる可能性があります。 :)ここに質問があります。"database"の代わりにMDF SQL Serverファイルを使用するとパフォーマンスが低下しますか?

私のデータベースではなく、ローカルSQL Server MDFファイルを使用すると、どの程度のパフォーマンスが得られますか?

答えて

3

効果的になし。または、実際にはDBをWebサイトと同じボックスで実行させること以上のものはありません。それでもSql Server Expressデータベースは同じです。プロダクション側では、おそらくDBをデータベース専用の別のボックスで実行したいと思うでしょう。しかし、コードワイズは唯一の違いは接続文字列です。

2

SQL Serverは、サーバー上の各データベースに対してMDFファイルを使用します。とにかくMDFファイルに 'データベース'が格納されるため、MDFファイルと 'データベース'の間に違いはありません。

1

パフォーマンスは賢明な違いはありません。

最大の問題は、運用の展開と管理です。動的に接続された.mdfよりも、標準データベースを管理する方がずっと簡単です。

+0

私はウェブサイトを運営したいと思っている人です。データベースをバックアップするためのダウンロード以外の管理はあまりありません。私はデータベースをダウンロードし、パッチを適用してからパッチデータベースをアップロードする必要があります。私はそれがテーブルを更新するプロセスであると仮定しています。 –

+0

そうなら、あなたは大丈夫かもしれませんが、実行中に何かを管理するためにSSMSを使いたいのであれば、それは非常に薄れてしまいます。私は、本番環境での.mdfファイルの良い経験は一度もありませんでした。 –

0

また、ウェブホストもこれをサポートする必要があることを忘れないでください。 SQL Server Expressは「ユーザーインスタンス」データベースをサポートする唯一のSKUであるため、そのまま使用するためにはホストにExpressがインストールされている必要があります。 OTOHを使用すると、Webホストにデプロイするときに、この方法で開発してデータベースを展開し、接続文字列を変更することができます。

0

エクスプレス版のSQL Serverの通常のリソース制限を超える唯一の違いは、SQL ExpressエンジンがMDFファイルに接続している間に無視できる起動コストであり、ルーチンがファイルの整合性とトランザクションログの内容をチェックするかどうかです。

これは、すべての要求ではなく、アプリケーションの起動時に発生する必要があります。

関連する問題