SQL Server 啟動有以下幾種方法:
(1)在Control Panel——Administrative Tools——Services,找到SQL Server (XXX)進行啟動。
其中XXX為實例名,默認實例名為“MSSQLSERVER”。
Figure-1: 在OS Services中啟動
(2)在SQL Server Configuration Manager中啟動。
Figure-2: 在SQL Server Configuration Manager中啟動
(3)在SSMS的Object Explorer中啟動。
不過這種方法在已經打開Object Explorer並且沒有斷開與Database Engine的連接才能使用。適合於正在使用SSMS,需要重啟SQL Server實例的快速方法。
Figure-3: SSMS中停止實例服務
(4)在CMD下啟動。
語法是:NET START "Service name",相應的停止服務是:NET STOP "Service name"。其中Service name在Control Panel——Administrative Tools——Services,右鍵選擇相應的服務——Properties中查看。
Figure-4: 查看Service name
Figure-5: CMD下啟動和停止SQL Server默認實例
注意,需要使用足夠的權限的用戶才能啟動/停止服務,否則會報以下的錯誤:
Figure-6: 權限不足,導致操作失敗
使用PowerShell,默認PS開頭的提示符下,可以成功啟動/停止默認實例。但如果操作命名實例,則會提示“服務名無效”,即使操作用戶擁有足夠的權限。
Figure-7: 使用PowerShell啟動/停止SQL Server服務
解決方法就是在PowerShell轉入CMD下進行操作。
Figure-8: 轉入CMD下操作成功
(5)在CMD下,直接運行“sqlserver.exe”
Figure-9: 找到sqlserver.exe的路徑和啟動參數
Figure-10: 在CMD下直接執行sqlserver.exe
Figure-11: 在CMD下直接執行sqlserver.exe後顯示的信息
前面介紹的4種方法,SQL Server是以後台服務的形式啟動的,SQL Server的日志信息會記錄到日志文件裡。而第5種方法是以一般應用程序在運行,在SQL Server的日志信息直接出現在當前的CMD窗口中。如果按CTRL + C並以Y結束,或關閉CMD窗口,SQL Server進程會被關閉。
Figure-12: CTRL + C並以Y結束sqlserver.exe進程
這種啟動SQL Server後,在Services裡是看不到啟動的,在SSMS也顯示為未啟動。但是可以正常使用SQL Server。
Figure-13: Service中顯示SQL Server並未啟動
Figure-14: SSMS中的Database Engine顯示停止狀態,但能夠執行SQL查詢
如果此時在SSMS或在Services裡再以服務的形式啟動SQL Server,會報以下的錯誤:
Figure-15: 在SSMS中啟動時報錯
Figure-16: 在Service中啟動時報錯
同樣的,如果已經以服務的形式啟動了SQL Server,再以第5種方法再去啟動,會報以下錯誤:
Figure-17: 再次直接執行sqlserver.exe時報錯
SQL Server的幾種方法就介紹到這裡。其實主要使用前面兩種方法即可,推薦第2種方法。為什麼呢?等以後有機會介紹SQL Server啟動的過程,再作解釋。
NET START命令的使用,參考以下文檔:
https://technet.microsoft.com/en-us/library/bb490713.aspx