次の方法で共有


データベース エンジン サービスのスタートアップ オプション

スタートアップ オプションは、起動時に必要な特定のファイルの場所およびサーバー全体の状態を指定します。 通常は、スタートアップ オプションを指定する必要はありません。 データベース エンジン のトラブルシューティングを行う場合や、特殊な問題が発生し、スタートアップ オプションの使用を SQL Server カスタマー サポートから指示された場合のみ指定します。

警告

スタートアップ オプションを不適切に使用すると、サーバー パフォーマンスの低下を招くことや、 SQL Server が起動しなくなることがあります。

スタートアップ オプションについて

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

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

スタートアップ オプションの一覧

既定のスタートアップ オプション 説明
-d master_file_path master データベース ファイルの完全修飾パス (通常は、C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\master.mdf)。 このオプションを省略すると、レジストリ内にあるパラメーターが使用されます。
-e error_log_path エラー ログ ファイルの完全修飾パス (通常は、C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\LOG\ERRORLOG) です。 このオプションを省略すると、レジストリ内にあるパラメーターが使用されます。
-l master_log_path master データベース ログ ファイルの完全修飾パス (通常は、C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\mastlog.ldf)。 このオプションを指定しない場合は、レジストリ内にあるパラメーターが使用されます。
他のスタートアップ オプション 説明
-c コマンド プロンプトから SQL Server を起動する場合に、起動時間を短縮します。 通常、 SQL Server データベース エンジン は、サービス コントロール マネージャーを呼び出すことにより、サービスとして起動します。 SQL Server データベース エンジン は、コマンド プロンプトから起動した場合はサービスとして起動しないため、 -c を使用してこの手順を省略します。
-f SQL Server のインスタンスを最小構成で起動します。 設定値によりサーバーが起動できないとき (たとえば使用できるメモリが不足している場合) などに便利です。 SQL Server を最小構成モードで起動すると、 SQL Server がシングル ユーザー モードになります。 詳細については、後の -m の説明を参照してください。
-g memory_to_reserve 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 スイッチによって確保するメモリ量を増やすことを検討してください。

既定値より小さい値を使用すると、SQL Server Memory Manager によって管理されるメモリ プールおよびスレッド スタックが利用できる容量が増えます。その結果、拡張ストアド プロシージャ、分散クエリ、またはオートメーション オブジェクトを多用しないシステムの、メモリ負荷の高い作業のパフォーマンスが向上することがあります。
-m SQL Server のインスタンスをシングル ユーザー モードで起動します。 SQL Server のインスタンスをシングル ユーザー モードで起動する場合、接続できるユーザーは 1 ユーザーのみで、CHECKPOINT プロセスは起動されません。 CHECKPOINT は、完了したトランザクションがディスク キャッシュからデータベース デバイスに定期的に書き込まれることを保証する機能です。 一般的に、システム データベースを修復する必要がある問題が発生したときに、このオプションを使用します。sp_configure allow updates オプションが有効になります。 既定では、allow updates は無効になっています。 SQL Server をシングル ユーザー モードで起動すると、コンピューターのローカル Administrators グループのメンバーはすべて、固定サーバー ロール sysadmin のメンバーとして SQL Server のインスタンスに接続できるようになります。 詳細については、「 システム管理者がロックアウトされた場合の SQL Server への接続」を参照してください。シングル ユーザー モードの詳細については、「 シングル ユーザー モードでの SQL Server の起動」を参照してください。
-m"クライアント アプリケーション名" SQLCMD または SQL Server Management Studio で -m オプションを使用する場合は、指定したクライアント アプリケーションへの接続を制限します。 たとえば、-m"SQLCMD" を使用すると、接続が、SQLCMD クライアント プログラムとして識別される必要がある単一の接続に限定されます。 このオプションは、 SQL Server をシングル ユーザー モードで起動するときに、その唯一の接続を不明なクライアント アプリケーションによって使用されていた場合に使用します。 Management Studio のクエリ エディター経由で接続するには、-m"Microsoft SQL Server Management Studio - Query"を使用します。

クライアント アプリケーション名では大文字と小文字が区別されます。

** セキュリティに関する注意事項 ** このオプションをセキュリティ機能として使用しないでください。 クライアント アプリケーションの名前はクライアント アプリケーションによって接続文字列の一部として指定されるため、本当の名前が指定されるとは限りません。
-n SQL Server イベントを記録する際に、Windows アプリケーション ログを使用しません。 -n を使用して SQL Server のインスタンスを起動する場合は、 -e スタートアップ オプションも使用することをお勧めします。 このオプションを指定しないと、 SQL Server のイベントはログに記録されません。
-s SQL Serverの名前付きインスタンスの起動を可能にします。 -s パラメーターが設定されていない場合は、既定のインスタンスが起動されます。 sqlservr.exeを開始する前に、コマンド プロンプトで、インスタンスの適切な BINN ディレクトリに移動する必要があります。 たとえば、Instance1 がバイナリ用に \mssql$Instance1 を使用する場合、ユーザーは \mssql$Instance1\binn ディレクトリで sqlservr.exe -s instance1を起動する必要があります。
-T trace# 指定された、有効なトレース フラグ (trace# ) を使用して SQL Server のインスタンスを起動します。 トレース フラグを使用してサーバーが起動すると、標準的な動作とは異なります。 詳細については、トレース フラグ (Transact-SQL)に関する記事を参照してください。

** 重要 ** -T オプションでトレース フラグを指定する場合は、大文字の "T" を使用してトレース フラグ番号を渡します。 SQL Server では小文字の "t" を使用できますが、これにより、SQL Server サポート エンジニアのみが必要とする他の内部トレース フラグが設定されます。 コントロール パネルの起動ウィンドウで指定されているパラメーターは使用されません。
-x 次の監視機能を無効にします。

SQL Server パフォーマンス モニター カウンター

CPU 時間とキャッシュ ヒット率統計の管理

DBCC SQLPERF コマンドに関する情報の収集

一部の動的管理ビューに関する情報の収集

拡張イベントの多数のイベント ポイント



** 警告 ** -x スタートアップ オプションを使用すると、SQL Server のパフォーマンスと機能の問題を診断するために使用できる情報が大幅に削減されます。
-E ファイル グループ内の各ファイルに割り当てられるエクステントの数を増やします。 このオプションは、インデックス スキャンまたはデータ スキャンを実行するユーザーの数が限られているデータ ウェアハウス アプリケーションで役立つ場合があります。 パフォーマンスに悪影響を及ぼす可能性があるため、他のアプリケーションでは使用しないでください。 このオプションは、32 ビット リリースの SQL Serverではサポートされていません。

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

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

注意

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

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

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

互換性サポート

-h パラメーターは、SQL Server 2014 ではサポートされていません。 このパラメーターは、以前のバージョンの 32 ビット インスタンスの SQL Server で、AWE が有効になっているときにホット 追加メモリ メタデータの仮想メモリ アドレス空間を予約するために使用されていました。 詳細については、「SQL Server 2014 で提供が中止された機能」を参照してください。

scan for startup procs サーバー構成オプションの構成

データベース エンジン、SQL Server エージェント、SQL Server Browser サービスの開始、停止、一時停止、再開、および再起動

参照

CHECKPOINT (Transact-SQL)
sqlservr アプリケーション