SQL Server サービスのスタートアップ オプションの使用

SQL Server をインストールすると、セットアップが Microsoft Windows のレジストリに既定のスタートアップ オプションを書き込みます。これらのスタートアップ オプションを使用して、代替の master データベース ファイル、master データベース ログ ファイル、またはエラー ログ ファイルを指定することができます。

スタートアップ オプションは、SQL Server 構成マネージャを使用して設定できます。詳細については、「サーバーのスタートアップ オプションを構成する方法 (SQL Server 構成マネージャ)」を参照してください。

既定のスタートアップ オプション 説明

-dmaster_file_path

master データベース ファイルの完全修飾パス (通常は、C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\master.mdf)。このオプションを指定しない場合、レジストリ内の既存のパラメータが使用されます。

-eerror_log_path

エラー ログ ファイルの完全修飾パス (通常は、C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\LOG\ERRORLOG)。このオプションを指定しない場合、レジストリ内の既存のパラメータが使用されます。

-lmaster_log_path

master データベース ログ ファイルの完全修飾パス (通常は、C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\mastlog.ldf)。

既定のスタートアップ オプションを一時的に上書きし、以下のスタートアップ オプションを使用して SQL Server のインスタンスを起動することができます。

他のスタートアップ オプション 説明

-c

コマンド プロンプトから SQL Server を起動する場合に、起動時間を短縮します。通常、SQL Server データベース エンジンは、サービス コントロール マネージャを呼び出すことにより、サービスとして起動します。SQL Server データベース エンジンは、コマンド プロンプトから起動した場合はサービスとして起動しないため、-c を使用してこの手順を省略します。

-f

SQL Server のインスタンスを最小構成で起動します。設定された構成値によりサーバーを起動できないとき (たとえば使用できるメモリが不足している場合) などに便利です。

-gmemory_to_reserve

SQL Server が、SQL Server メモリ プール外の SQL Server プロセス内にメモリ割り当てに使用できる領域として残すメモリ容量を整数 (MB 単位) で指定します。メモリ プール外のメモリは、拡張プロシージャ .dll ファイル、分散クエリによって参照される OLE DB プロバイダ、および Transact-SQL ステートメントで参照されるオートメーション オブジェクトなどのアイテムを読み込むために、SQL Server によって使用される領域です。既定値は 256 MB です。

このオプションを使用すると、メモリ割り当てを調整するうえで役に立つ場合がありますが、これは、アプリケーションが使用できる仮想メモリに対してオペレーティング システムが設定する制限値よりも物理メモリが多い場合だけです。このオプションは、SQL Server に必要なメモリ容量が通常より多い大容量メモリ構成で、SQL Server プロセスの仮想アドレス空間全体が使用される場合に効果があります。このオプションを誤って使用すると、SQL Server が起動しないことや、実行時エラーが発生することがあります。

SQL Server エラー ログに次の警告が記録されない限り、-g パラメータの既定値を使用してください。

  • "Failed Virtual Allocate Bytes: FAIL_VIRTUAL_RESERVE <size>"
  • "Failed Virtual Allocate Bytes: FAIL_VIRTUAL_COMMIT <size>"

これらのメッセージは、拡張ストアド プロシージャ .dll ファイルやオートメション オブジェクトなどのアイテムの格納領域を確保するために SQL Server が SQL Server メモリ プールの一部を解放しようとしていることを示している場合があります。その場合は、-g スイッチによって確保するメモリ量を増やすことを検討してください。

既定値より小さい値を使用すると、バッファ プールおよびスレッド スタックが利用できる容量が増えます。その結果、拡張ストアド プロシージャ、分散クエリ、またはオートメーション オブジェクトを多用しないシステムの、メモリ負荷の高い作業のパフォーマンスが向上することがあります。

-h

32 ビットの SQL Server 2005 で AWE が有効になっている場合に、ホット アド メモリ メタデータ用の仮想アドレス空間を確保します。32 ビットでの AWE 使用時のホット アド メモリには必要ですが、約 500 MB の仮想アドレス空間を消費するので、メモリのチューニングがより難しくなります。64 ビットの SQL Server には必要ありません。ホット アド メモリは、 の Enterprise Edition および Datacenter Edition でのみ使用可能です。また、ハードウェア ベンダによる特別なハードウェア サポートが必要です。

-m

SQL Server のインスタンスをシングル ユーザー モードで起動します。SQL Server のインスタンスをシングル ユーザー モードで起動する場合、接続できるユーザーは 1 ユーザーのみで、CHECKPOINT プロセスは起動されません。CHECKPOINT は、完了したトランザクションがディスク キャッシュからデータベース デバイスに定期的に書き込まれることを保証する機能です。一般的に、システム データベースを修復する必要がある問題が発生したときに、このオプションを使用します。場合によっては、-m オプションで起動後、SQL Server に接続するために実行中の SQL Executive サービスを停止する必要があります。このオプションにより、sp_configure allow updates オプションが有効になります。既定では、allow updates は無効になっています。

-n

SQL Server イベントを記録する際に、Windows アプリケーション ログを使用しません。-n を使用して SQL Server のインスタンスを起動する場合は、-e スタートアップ オプションも使用することをお勧めします。このオプションを指定しないと、SQL Server のイベントはログに記録されません。

-s

SQL Server 2005 の名前付きインスタンスを起動できるようにします。-s パラメータが設定されていない場合は、既定のインスタンスが起動されます。sqlservr.exe を起動する前に、コマンド プロンプトで目的のインスタンスの適切な BINN ディレクトリに移動する必要があります。たとえば、Instance1 がバイナリに \mssql$Instance1 を使用する場合、ユーザーは \mssql$Instance1\binn ディレクトリで sqlservr.exe -s instance1 を起動する必要があります。

-Ttrace#

指定された、有効なトレース フラグ (trace#) を使用して SQL Server のインスタンスを起動します。トレース フラグを使用してサーバーが起動すると、標準的な動作とは異なります。詳細については、「トレース フラグ (Transact-SQL)」を参照してください。

-x

CPU 時間とキャッシュ ヒット率統計の管理を禁止します。パフォーマンスは最大になります。

ms190737.note(ja-jp,SQL.90).gifメモ :
-T オプションを指定してトレース フラグを指定するときは、大文字の "T" を使用してトレース フラグ番号を渡してください。SQL Server は小文字の "t" を受け付けますが、これは SQL Server のサポート エンジニアのみが必要とする他の内部トレース フラグを設定するためのものです。コントロール パネルの起動ウィンドウで指定されているパラメータは使用されません。

トラブルシューティングでのスタートアップ オプションの使用

シングル ユーザー モードや最小構成モードなど、一部のスタートアップ オプションは、主にトラブルシューティングの際に使用されます。トラブルシューティングのために -m オプションや -f オプションを使用してサーバーを起動する場合は、sqlservr.exe を手動で起動するときに、コマンド ラインから起動すると最も容易に起動できます。

ms190737.note(ja-jp,SQL.90).gifメモ :
net start を使用して SQL Server を起動する場合、スタートアップ オプションではハイフン (-) の代わりにスラッシュ (/) を使用します。

通常の操作でのスタートアップ オプションの使用

スタートアップ オプションの一部は、SQL Server を起動するたびに使用することが考えられます。このようなオプション (-g やトレース フラグを使用した起動など) は、SQL Server Management Studio または SQL Server 構成マネージャを使用して、起動時のパラメータを構成すると最も容易に設定できます。これらのツールは、スタートアップ オプションをレジストリ キーとして保存するため、常にこれらのスタートアップ オプションを使用して SQL Server を起動できます。

参照

処理手順

SQL Server のインスタンス (sqlservr.exe) を起動する方法
SQL Server のインスタンスを開始する方法 (SQL Server 構成マネージャ)
SQL Server のインスタンスを起動する方法 (net コマンド)

その他の技術情報

sqlservr.exe を使用したコマンド プロンプトからの SQL Server の管理
CHECKPOINT (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手