在 Linux 上啟動、停止和重新啟動 SQL Server 服務

適用於:SQL Server - Linux

本文描述如何使用命令列或 Transact-SQL,在 Linux 上啟動、停止或重新啟動 SQL Server 資料庫引擎和 SQL Server Agent。

若為 Windows 上的 SQL Server,請參閱啟動、停止、暫停、繼續和重新啟動 SQL Server 服務

識別服務

SQL Server 元件是可執行檔程式,會以服務的形式執行 (在 Linux 上也稱為精靈)。 Linux 服務可以於不在電腦畫面上顯示任何活動的情況下執行,且不需要在命令列上與使用者互動。

Database Engine 服務

資料庫引擎服務是預設執行個體,有每部電腦一個的限制。 Linux 上不支援具名執行個體。 若要使用容器在單一電腦上執行多個 SQL Server 執行個體,請參閱在容器中部署和連線至 SQL Server

SQL Server Agent 服務

SQL Server Agent 服務,會執行排程的管理工作 (稱為作業和警示)。 如需詳細資訊,請參閱 SQL Server Agent。 並非所有 SQL Server 版本都可使用 SQL Server Agent。 如需 SQL Server 版本支援的功能清單,請參閱 SQL Server 2019 版本支援的功能

其他資訊

  • 在 Linux 上,您無法像在 Windows 上一般暫停資料庫引擎服務。 SQL Server Agent 服務也無法暫停或繼續。

  • 在叢集上執行時,請使用適當的叢集管理工具來管理 Linux 發行版本的資料庫引擎。 如需使用 Pacemaker 的範例,請參閱針對 Linux 上的 SQL Server 部署 Pacemaker 叢集

權限

根據預設,只有本機系統管理員群組的成員能夠啟動、停止、暫停或重新啟動服務。

使用 Transact-SQL SHUTDOWN 命令停止資料庫引擎,需要 sysadminserveradmin 固定伺服器角色的成員資格,且無法移轉。

使用命令列工具

下列步驟示範如何啟動、停止、重新啟動及檢查 Linux 上 SQL Server 服務的狀態。 若要管理 SQL Server 容器,請參閱針對Linux 上的 SQL Server 進行疑難排解

使用此命令來檢查資料庫引擎服務的狀態:

sudo systemctl status mssql-server

您可以使用下列命令,視需要停止、啟動或重新啟動 SQL Server 服務:

sudo systemctl stop mssql-server
sudo systemctl start mssql-server
sudo systemctl restart mssql-server

若要設定和管理 SQL Server Agent,請參閱在 Linux 上安裝 SQL Server Agent。 若要重新啟動 SQL Server Agent 服務,您必須重新啟動資料庫引擎服務。

Transact-SQL

您可使用 SHUTDOWN 陳述式來停止資料庫引擎。

使用 Transact-SQL 停止資料庫引擎

  • 若要等待目前正在執行的 Transact-SQL 陳述式和預存程序完成,然後停止資料庫引擎,請執行下列陳述式。

    SHUTDOWN;
    
  • 若要立即停止資料庫引擎,請執行下列陳述式。

    SHUTDOWN WITH NOWAIT;
    

如需 SHUTDOWN 陳述式的詳細資訊,請參閱 SHUTDOWN (Transact-SQL)