SHUTDOWN (Transact-SQL)
適用対象:SQL Server
SQL Server を直ちに停止します。
構文
SHUTDOWN [ WITH NOWAIT ]
引数
WITH NOWAIT
省略可能。 各データベースでチェックポイントを実行せずに、SQL Server をシャットダウンします。 SQL Server はすべてのユーザー プロセスの停止を試行した後に終了します。 サーバーが再起動すると、不完全なトランザクションに対してロールバック操作が発生します。
解説
WITH NOWAIT
オプションを使用しない限り、SHUTDOWN
は次の方法で SQL Server をシャットダウンします。
ログインを無効にする (固定サーバー ロール sysadmin および serveradmin のメンバーを除く)。
Note
現在のすべてのユーザーの一覧を表示するには、
sp_who
実行します。現在実行中の Transact-SQL ステートメントまたはストアド プロシージャが終了するまで待機する。 すべてのアクティブなプロセスとロックの一覧を表示するには、それぞれ
sp_who
とsp_lock
を実行します。各データベースにチェックポイントを挿入する。
SHUTDOWN
ステートメントを使用すると、sysadmin 固定サーバー ロールのメンバーが SQL Server を再起動するときに必要な自動回復作業の量が最小限に抑えられます。
後に示すツールや方法を使用しても SQL Server を停止できます。 いずれの停止方法でも、すべてのデータベースでチェックポイントが発行されます。 コミットされたデータをデータ キャッシュからフラッシュして、サーバーを停止できます。
SQL Server 構成マネージャーを使用する。
既定のインスタンスのコマンド プロンプトから
net stop mssqlserver
を実行するか、名前付きインスタンスのコマンド プロンプトからnet stop mssql$<instancename>
を実行します。[コントロール パネル] の [サービス] を使用する。
コマンド プロンプトから sqlservr.exe
を開始した場合は、Ctrl キー 押+C キー 押すと、SQL Server がシャットダウンされます。 ただし、Ctrl+C を押してもチェックポイントは挿入されません。
Note
どの方法で SQL Server を停止しても、SQL Server には SERVICE_CONTROL_STOP
メッセージが送信されます。
アクセス許可
SHUTDOWN
権限は、sysadmin および serveradmin 固定サーバー ロールのメンバーに割り当てられ、転送できません。