web-dev-qa-db-ja.com

SQL Server Expressの制限がボトルネックになっていますか?

質問: SQL Server Expressの制限が環境のボトルネックであるかどうかを判断するための最良の方法は何ですか?たとえば、良い指標となるパフォーマンスカウンターはありますか? SQL Serverアクティビティモニター内の情報の一部は、良い証拠を提供しますか?データベースのサイズ制限は簡単に確認できますが、他の制限は少し明確ではありません。 Expressが使用するリソースに関して制限されている場合、システム全体のパフォーマンスカウンターを確認することは適切なアプローチではないようです。

関連する質問-SQLServerを使用すると、試用の前後に大幅に再構成することなく、Standardエディションを簡単に試用できますか?理想的なのは、既存のインスタンスでフルファットエディションの機能を「オン」にし、必要に応じて後でロールバックする方法です。それが不可能な場合は、別のインスタンスをインストールしてデータベースを一時的に移動することはそれほど悪くありません。

背景:メインアプリケーションがSQL ServerExpressに支えられたWindowsベースの基幹業務アプリケーションである環境があります。アプリケーションのパフォーマンスは長い間低下していましたが、最近まで、ハードウェア、ソフトウェア、および一般的な環境は古く、保守も不十分でした。つまり、更新されたソフトウェアと最新のより適切なハードウェアを備えた新しい環境に移行することが役立つ場合があります。アプリケーションベンダーは、SQL Server Express 2008から2014以降へのアップグレードが役立つと信じていましたが、当時は実用的ではありませんでした。

最新のハードウェア、Windows Server2016およびSQLExpress 2016を備えたまったく新しい環境に移行した後も、アプリケーションのパフォーマンスは依然として低下しています。ボトルネックが実際にSQLServer Expressの制限である場合、これが発生する可能性があると考えました。しかし、これが事実であり、他の何かではないことを明確に判断する方法がわかりません。新しい環境にはCPU、メモリ、ディスクの面で十分なリソースがあるので、それはありそうもないと思いますが、確かな証拠があればいいのですが。

どちらかといえば、SQLデータベースエンジンとアプリケーションが(同じ仮想スイッチ上ではあるが)別々のVMで実行されているためか、以前は両方とも同じ物理ボックスで実行されていたため、以前よりも少し遅くなっています。

調べたことがある人なら誰でも知っているように、フルファットSQL Serverは安価ではないため、ビジネスケースは、これが必要であり、間違いなく後押しとなるという確固たる証拠に裏打ちされている必要があります。

2
dbr

おっしゃるように、アプリケーションは非常に長い間実行されているので、それ以降、使いやすさと使用量が変化し、パフォーマンスが低下する可能性があると思います。 SQL Expressには、発生しているパフォーマンスの問題に直接影響を与える可能性のあるリソース制限があります。スペックの良いハードウェアを使用していても、SQLはそれを使用していない可能性があります。

主な制限は次のとおりです(SQL2012-2016)。

  1. バッファプールで使用可能なメモリ:1.2GB
  2. cPUコアの最大数:1ソケットまたは4コアのいずれか少ない方に制限されます
  3. データベースサイズ:10GB

他の質問に関して:はい、トレイルの期間にStandardエディションを並べてインストールして、それがどのように進行するかを確認することも、TESTサーバーにDeveloperエディションをインストールすることもできます。エンタープライズ版とそれは無料です。

基本的に、Expressエディションでデータベースをバックアップし、新しいインスタンスで復元する必要があります。また、新しい名前付きインスタンスを指すようにアプリケーションの接続文字列を変更する必要があります。

パフォーマンスの問題は、Expressエディションの制限が原因である場合とそうでない場合があります。 SQL Serverが待機しているもの、リソースを最も消費しているもの、リソースを最も消費しているクエリなど、SQL内でのパフォーマンスをさらに詳しく調査することは興味深いことです。

ここでは、システムで無料のパフォーマンスチェックを行う方法を説明します。結果の解釈方法が正確にわからない場合は、ここに投稿してください。誰かが助けてくれると確信しています。

無料のSQL Serverヘルスチェックを実行する方法

無料のSQL Serverパフォーマンスチェックを行う方法

1