sql >> データベース >  >> RDS >> Sqlserver

継続的なデータベース監視の改善のための秘訣

    データベースのパフォーマンスの問題は珍しいことではありません。幸いなことに、通常、ほとんどの問題にはかなり直感的な解決策があります。問題を迅速に修正し、SQL Serverのパフォーマンスを向上させるためにDBAが実行できる最も重要なことは、パフォーマンス監視戦略が最新であり、データベース監視のニーズに適合していることを確認することです。そうでない場合は、行動を起こす時が来ました。

    データベース監視を改善するための最初のステップは、現在の状況を評価することです。開始点のベースライン測定を行わないと、監視が不足している場所や、監視によってパフォーマンスの問題が改善されているかどうかがわかりません。

    パフォーマンスベースラインを設定するには、いくつかの質問をしてSQLServerデータベースの状態を評価する必要があります。

    クエリは最適化されていますか? パフォーマンスの低いクエリは、パフォーマンスを低下させる確実な方法です。クエリをクリーンアップするためのトリックはたくさんありますが、最善のオプションは、クエリを分析して、より高速なクエリが見つかるまで書き換えるクエリオプティマイザを実装することです。

    インデックスは良好な状態ですか? 適切に行われた索引付けは、データ検索を高速化することになっています。ただし、非効率的な曲線因子設定やページ分割など、パフォーマンスを低下させる可能性のある一般的な問題がいくつかあります。これらのパフォーマンスの問題を回避する最善の方法は、システム全体の曲線因子値を設定せず、各インデックスのニーズを個別に確認することです。

    多くのデータが断片化されていますか? 断片化されたデータは、ページに空白を入れすぎたり、ページを追加したりすることで、パフォーマンスに影響を与えます。サーバーは断片化されたデータをスキャンして検索する必要があるため、データベースの実行が遅くなります。再構築または再編成を実行すると、断片化をクリーンアップできます。

    CPUを食べているものはありますか? CPUに複数のリソースの負荷がかかると、データベースの速度が低下します。 CPU負荷を評価し、CPUを追加する必要があるのか​​、それとも必要以上のCPUを使用する非効率的なリソースがあるのか​​を判断します。

    スタートラインのスナップショットを取得すると、焦点を当てる必要のある監視の改善の種類についてよりよく理解できるようになります。 SQLServerデータベースの監視を改善する5つの方法を次に示します。

    1。監視間隔を評価し、データをできるだけ頻繁にパージします

    パフォーマンス監視ツールは、監視するメトリック、データをプルするタイミング、およびデータを保持する期間について、無限の選択肢を提供します。複数のインスタンスを監視している場合、収集するデータの量は潜在的に驚異的です(そして保存するのに費用がかかります)。

    データを管理可能なレベルに保つには、必要以上にデータを収集せず、傾向を特定するのに十分な長さのデータのみを保持します。関心のあるものを記録したら、データをアーカイブまたは削除します。

    2。クエリが効率的に実行されていることを確認します

    SQLServerにはパフォーマンスの問題を隠す場所がたくさんあります。データベースアプリケーションはSQLクエリを頻繁に実行するため、クエリの状態を評価することは、問題の排除を開始するのに最適な場所です。

    たとえば、クエリが時間の経過とともにどのように実行されるかを監視すると、通常よりも多くのリソースを使用しているものを特定するのに役立ちます。問題のあるクエリを特定したら、各クエリを実行して問題の特定の原因を特定し、修正することができます。

    3。 Perfmonカウンターと設定を確認します

    SQL Serverパフォーマンスモニター(Perfmon)は、DBAがSQLServerデータベースの弱点を特定するのに役立つ貴重なツールです。 Perfmonを使用すると、サーバーごとにパフォーマンスカウンターを設定して、CPUのボトルネック、ディスクパフォ​​ーマンス、メモリの問題などを特定できます。

    Brent Ozarによるこの記事では、Perfmonの使用を開始する方法と、いくつかのベストプラクティスについて説明しています。

    4。重大度に基づいてアラートを構成する

    利用可能なアラート構成は多数ありますが、アラートを構成するときは、アラートの疲労に屈しないように選択するのが最善です。経験則として、重大度17以上の問題、およびエラーメッセージ823、824、および825、つまり、サーバーのオフライン、重大なデータ破損、またはデータ損失を引き起こす可能性のある問題に対してアラートを設定することをお勧めします。

    5。 SQLServerパフォーマンス監視ツールが提供するすべてのアラーム管理機能を活用します

    SQL Server監視ソリューションは、幅広い管理機能を提供します。時間をかけてツールの機能を理解し、投資に対して最大の価値を確実に得られるようにしてください。

    パフォーマンス監視プロセスの改善に役立つ検索機能は次のとおりです。

    ルール: どのアラームがいつトリガーされるかをカスタマイズできます

    診断: 問題があることを通知し、可能な修正を提供します

    問題の優先順位付け: 最初に最も重大度の高い問題に注意を向けます

    モバイルアラート: いつでもどこからでもアラームにアクセス、評価、トリアージを開始できます

    ノイズリダクション: 必要な通知のみを受信することで、アラームの疲労を回避できます


    1. 結果セットを使用して複数のレコードを表示する

    2. SQLServerのユーザー定義関数からSCHEMABINDINGを削除します

    3. エラー1148:使用されたコマンドはこのMySQLバージョンでは許可されていません

    4. 長期プロジェクトでのタイムゾーンの導入についての詳細