sqlservr アプリケーション

適用対象 SQL Server

コマンド プロンプトから sqlservr アプリケーションを使用して、Microsoft SQL Server のインスタンスの起動、停止、一時停止、続行を行います。 この手順は、トラブルシューティング目的で Microsoft SQL Server を開始するためにのみ使用してください。

構文

sqlservr [-s instance_name] [-c] [-d master_path] [-f] 
     [-e error_log_path] [-l master_log_path] [-m]
     [-n] [-T trace#] [-v] [-x]

引数

-s instance_name 接続先となる SQL Server のインスタンスを指定します。 名前付きインスタンスを指定しない場合、 sqlservr は SQL Serverの既定のインスタンスを起動します。

重要

SQL Serverのインスタンスを起動する場合、そのインスタンス用の適切なディレクトリで sqlservr アプリケーションを使用する必要があります。 既定のインスタンスの場合は、\MSSQL\Binn ディレクトリで sqlservr を実行します。 名前付きインスタンスの場合は、\MSSQL$ instance_name \Binn ディレクトリでsqlservrを実行します。

-c: Windows サービス コントロール マネージャーに依存せずに、SQL Server のインスタンスを起動します。 このオプションは、コマンド プロンプトから SQL Server を起動して SQL Server の起動に要する時間を短縮する場合に使用します。

Note

ただし、このオプションを使用すると、 SQL Server サービス マネージャーまたは SQL Server net stop コマンドを使用して を停止することはできません。また、コンピューターからログオフすると、 SQL Server は停止します。

-d master_path: master データベース ファイルの完全修飾パスを指定します。 -dmaster_pathの間には空白を入れません。 このオプションを省略すると、レジストリ内にあるパラメーターが使用されます。

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

-e error_log_path: エラー ログ ファイルの完全修飾パスを指定します。 指定していない場合、既定の場所は、既定のインスタンスの場合は *\<Drive>*:\Program Files\Microsoft SQL Server\MSSQL\Log\Errorlog、名前付きインスタンスの場合は *\<Drive>*:\Program Files\Microsoft SQL Server\MSSQL$*instance_name*\Log\Errorlog になります。 -eerror_log_pathの間には空白を入れません。

-l master_log_path: master データベース トランザクション ログ ファイルの完全修飾パスを指定します。 -lmaster_log_pathの間には空白を入れません。

-m: シングル ユーザー モードで SQL Server のインスタンスを起動します。 SQL Server をシングル ユーザー モードで起動した場合、1 人のユーザーのみ接続できます。 CHECKPOINT メカニズムは起動しません。CHECKPOINT メカニズムとは、完了したトランザクションをディスク キャッシュからデータベース デバイスに正しく書き込むことを保証する機能です。 一般的に、システム データベースを修復する必要がある問題が発生したときに、このオプションを使用します。このオプションによって sp_configure allow updates オプションが有効になります。 既定の設定では、 allow updates は無効になります。

-n: SQL Server の名前付きインスタンスの起動を可能にします。 -s パラメーターを設定しない場合、既定のインスタンスが起動します。 sqlservr.exeを開始する前に、コマンド プロンプトで、インスタンスの適切な BINN ディレクトリに移動する必要があります。 たとえば、Instance1 がバイナリ用に \mssql$Instance1 を使用する場合、ユーザーは \mssql$Instance1\binn ディレクトリで sqlservr.exe -s instance1を起動する必要があります。 SQL Server -n オプションで のインスタンスを起動する場合は、 -e オプションも使用してください。このオプションを指定しないと、 SQL Server のイベントは記録されません。

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

重要

トレース フラグを指定するときは、 -T を使用してトレース フラグ番号を渡してください。 では小文字の t ( -t SQL Server) も入力できますが、 -t では、 SQL Server のサポート エンジニアが必要とする他の内部トレース フラグが設定されます。

-v: サーバーのバージョン番号を表示します。

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

解説

sqlservr.exe を使用して Microsoft SQL Server を開始する代わりに、「データベース エンジン サービスのスタートアップ オプション」で説明されている方法を使用することをお勧めします。 ほとんどの場合、sqlserver.exe プログラムは高度なトラブルシューティングや主なメンテナンスのみに使用されます。 SQL Server がコマンド プロンプトから sqlservr.exe で起動された場合、 SQL Server はサービスとしては起動しないため、 SQL Server net コマンドを使用して を停止することはできません。 ユーザーは SQL Serverに接続することができますが、 SQL Server ツールによってサービスのステータスが表示されるため、 SQL Server 構成マネージャーはサービスが停止されたことを適切に示すことができます。 SQL Server Management Studio もサーバーに接続することができますが、同じようにサービスが停止されたことを示すことができます。

互換性サポート

次のパラメーターは廃止され、SQL Server 2019 (15.x) でサポートされていません。

パラメーター 詳細情報
-h 以前のバージョンの SQL Server の 32 ビットのインスタンスで、AWE が有効になっている場合に、ホット アド メモリ メタデータ用の仮想メモリ アドレス空間を確保します。 SQL Server 2014 (12.x) を介してサポートされています。 詳細については、「 SQL Server 2016 で提供が中止された機能」を参照してください。
-g memory_to_reserve

SQL Server の 32 ビット インスタンスの以前のバージョンに適用されます。 SQL Server 2014 (12.x) を介してサポートされています。 SQL Server メモリ プール外にある SQL Server プロセス内に、 SQL Server がメモリ割り当て用の領域として残すメモリの容量を、整数で指定します (メガバイト単位)。 詳細については、サーバー メモリ構成オプションに関する SQL Server 2014 ドキュメントを参照してください。

参照

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