title | description | author | ms.author | ms.date | ms.service | ms.subservice | ms.topic | f1_keywords | helpviewer_keywords | dev_langs | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
SHUTDOWN (Transact-SQL) |
SHUTDOWN immediately stops SQL Server. |
rwestMSFT |
randolphwest |
01/16/2025 |
sql |
t-sql |
reference |
|
|
|
[!INCLUDE SQL Server]
Immediately stops SQL Server.
:::image type="icon" source="../../includes/media/topic-link-icon.svg" border="false"::: Transact-SQL syntax conventions
SHUTDOWN [ WITH NOWAIT ]
Optional. Shuts down [!INCLUDE ssNoVersion] without performing checkpoints in every database. [!INCLUDE ssNoVersion] exits after attempting to terminate all user processes. When the server restarts, a rollback operation occurs for incomplete transactions.
Unless the WITH NOWAIT
option is used, SHUTDOWN
shuts down [!INCLUDE ssNoVersion] by:
-
Disabling logins (except for members of the sysadmin and serveradmin fixed server roles).
[!NOTE]
To display a list of all current users, runsp_who
. -
Waiting for currently running Transact-SQL statements or stored procedures to finish. To display a list of all active processes and locks, run
sp_who
andsp_lock
, respectively. -
Inserting a checkpoint in every database.
Using the SHUTDOWN
statement minimizes the amount of automatic recovery work needed when members of the sysadmin fixed server role restart [!INCLUDE ssNoVersion].
Other tools and methods can also be used to stop [!INCLUDE ssNoVersion]. Each of these issues a checkpoint in all databases. You can flush committed data from the data cache and stop the server:
-
By using [!INCLUDE ssNoVersion] Configuration Manager.
-
By running
net stop mssqlserver
from a command prompt for a default instance, or by runningnet stop mssql$<instancename>
from a command prompt for a named instance. -
By using Services in Control Panel.
If sqlservr.exe
was started from the command prompt, pressing Ctrl+C shuts down [!INCLUDE ssNoVersion]. However, pressing Ctrl+C doesn't insert a checkpoint.
Note
Using any of these methods to stop [!INCLUDE ssNoVersion] sends the SERVICE_CONTROL_STOP
message to [!INCLUDE ssNoVersion].
SHUTDOWN
permissions are assigned to members of the sysadmin and serveradmin fixed server roles, and they aren't transferable.