SHUTDOWN (Transact-SQL)

THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Immediately stops SQL Server.

Topic link icon Transact-SQL Syntax Conventions

Syntax


SHUTDOWN [ WITH NOWAIT ]   

Arguments

WITH NOWAIT
Optional. Shuts down SQL Server without performing checkpoints in every database. SQL Server exits after attempting to terminate all user processes. When the server restarts, a rollback operation occurs for uncompleted transactions.

Remarks

Unless the WITHNOWAIT option is used, SHUTDOWN shuts down SQL Server by:

  1. Disabling logins (except for members of the sysadmin and serveradmin fixed server roles).

    Note

    To display a list of all current users, run sp_who.

  2. 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 and sp_lock, respectively.

  3. 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 SQL Server .

    Other tools and methods can also be used to stop SQL Server . Each of these issues a checkpoint in all databases. You can flush committed data from the data cache and stop the server:

  • By using SQL Server Configuration Manager.

  • By running net stop mssqlserver from a command prompt for a default instance, or by running net 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 SQL Server . However, pressing CTRL+C does not insert a checkpoint.

Note

Using any of these methods to stop SQL Server sends the SERVICE_CONTROL_STOP message to SQL Server .

Permissions

SHUTDOWN permissions are assigned to members of the sysadmin and serveradmin fixed server roles, and they are not transferable.

See Also

CHECKPOINT (Transact-SQL)
sp_lock (Transact-SQL)
sp_who (Transact-SQL)
sqlservr Application
Start, Stop, Pause, Resume, Restart the Database Engine, SQL Server Agent, or SQL Server Browser Service