2026年4月28日火曜日

SQL Server サーバー設定と構成管理の基礎|sp_configureと主要オプションを解説

パフォーマンスと安定運用を左右する!SQL Serverサーバー設定と構成管理の基本を解説

SQL Serverでは、インスタンス単位で様々な設定を行うことができます。 これらの設定値は、サーバー全体の動作やパフォーマンスに大きく影響するため、 適切な管理が求められます。
この記事では、SQL Serverの構成を確認・変更するためのコマンドsp_configureの使い方と、 主要な構成オプションを実務視点でわかりやすく解説します。

目次

SQL Server構成設定の基本

構成オプションとは?

SQL Serverの構成オプションは、インスタンス単位で管理されるシステム設定です。 メモリ管理、最大接続数、エラーログ設定、並列実行など、サーバー全体の動作を制御します。

設定はデータベース単位ではなく、インスタンス全体に影響する点がポイントです。

確認・変更の方法

SQL Server Management Studio(SSMS)のGUIでも設定変更は可能ですが、 実務ではスクリプト化できる sp_configure を利用するのが一般的です。

sp_configureの使い方

現在の設定を確認する


EXEC sp_configure;

このコマンドを実行すると、現在の構成オプションと設定値が一覧表示されます。

詳細設定を有効にする

一部の高度な設定項目を表示・変更するには、show advanced options を有効にします。


EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;

これで詳細設定項目が表示・変更できるようになります。

設定を変更する基本構文


EXEC sp_configure 'オプション名', 新しい値;
RECONFIGURE;

変更後、RECONFIGUREを実行することで設定が即時反映されます。

主要な構成オプション一覧と意味

代表的な構成設定

オプション名 設定内容 推奨値/備考
max server memory (MB) SQL Serverが使用できる最大メモリ量 システム全体の70〜80%を目安に設定
min server memory (MB) 確保しておく最小メモリ量 安定運用時に設定検討
max degree of parallelism クエリ並列実行の最大スレッド数 OLTP系は1〜4、OLAP系はCPU数に応じて調整
cost threshold for parallelism 並列実行に切り替えるコスト閾値 デフォルト5→30前後に変更が多い
remote admin connections 専用管理接続の許可 リモート障害対応時に1へ
backup compression default バックアップ時の圧縮を既定で有効化 1(有効)推奨、ディスク節約

確認例


EXEC sp_configure 'max server memory (MB)';

特定項目の現在値と設定値を個別に確認できます。

構成変更の手順と反映方法

基本の流れ

  1. 変更前に現在値を確認(sp_configure)
  2. 必要に応じて詳細設定を有効化
  3. 設定変更 → RECONFIGURE 実行
  4. 再起動が必要な項目は、サービス再起動で反映

再起動が必要な項目

  • affinity mask(CPU割り当て)
  • max worker threads
  • network packet size など

変更後も即時反映されない場合は、SQL Serverサービスを再起動しましょう。

構成変更時の注意点と実務ポイント

  • 本番環境では必ず事前バックアップ:変更後の動作を元に戻せるようにする
  • RECONFIGURE WITH OVERRIDE:制限値を超える変更時のみ使用(慎重に)
  • 監査・ログ管理:変更履歴をドキュメント化し、変更理由を明確に
  • 定期的なレビュー:CPU・メモリ・IO構成に応じて最適値を見直す

設定値の永続化

sp_configureによる変更はインスタンス構成として永続化されます。 ただし、テンポラリな設定変更(セッション単位)はSET文を使用します。

まとめと次のステップ

学んだ内容の整理

  • sp_configureはSQL Serverの構成を確認・変更する基本コマンド。
  • show advanced optionsで詳細項目を有効化できる。
  • 主要オプション(メモリ・並列処理・圧縮設定など)は定期的に確認。
  • 変更時はRECONFIGUREを忘れず実行し、必要に応じて再起動。
SQL Server学習シリーズ
◀ 【第6回】トレースと拡張イベントの使い方
【第8回】バックアップとリストアの基本 ▶
目次へ

参考リンク

SQL Server 解説用イメージ

0 件のコメント:

コメントを投稿