分享方式:


Linux 上的 SQL Server 的安裝指引

適用於:SQL Server - Linux

本文提供在 Linux 上安裝、更新及解除安裝 SQL Server 2017 (14.x)、SQL Server 2019 (15.x) 和 SQL Server 2022 (16.x) 的指導方針。

如需了解其他部署案例,請參閱:

本指南涵蓋數個部署案例。 如果您只是需要逐步安裝指示,請跳到其中一個快速入門:

如需常見問題的解答,請參閱 Linux 上的 SQL Server 常見問題集

SQL Server 的支援原則

詞彙 定義
服務 Microsoft 產品生命週期內針對支持的發行版發行 GDR、Hotfix 和安全性修正。
支援 Microsoft 支援服務與支援散發套件相關的問題的使用者。

支援原則

在 Linux 散發套件上支援 SQL Server,直到兩個事件之前為止:發行版的支援生命週期結束,或 SQL Server 支援生命週期的結束。

維護原則

在 SQL Server 的主要支援階段期間,我們會為所有也在其主要支援期間內的 Linux 散發套件提供累積更新 (OU)。 對於從主流到延伸支援的 Linux 發行版,仍可視為支持的平台,Microsoft可以自行釋出 SU 和 Bug 修正。

一旦 SQL Server 超越主要支援,並進入延伸支援階段,我們會繼續發佈安全性更新和一般發行版本 (GDR) 修正程式。 不過,這些更新不會延伸到結束其支援期間的 Linux 發行版。

支援的平台

Red Hat Enterprise Linux (RHEL)、SUSE Linux Enterprise Server (SLES) 及 Ubuntu 都支援 SQL Server。 它還獲得支援,可以容器映像的方式在 Linux 的 Kubernetes、OpenShift 和 Docker 引擎執行。

平台 檔案系統 安裝指南
Red Hat Enterprise Linux 7.7 - 7.9 伺服器 1 或 8.x 伺服器 XFS 或 EXT4 安裝指南
SUSE Linux Enterprise Server v12 SP3 - SP5 2 XFS 或 EXT4 安裝指南
Ubuntu 18.04 LTS 3 XFS 或 EXT4 安裝指南
Docker Engine 1.8+ (Linux) N/A 安裝指南

1 在 2024 年 6 月底,RHEL 7.x 從主流維修轉換為延長生命週期支援 (ELS)。 如需詳細資訊,請參閱 Red Hat Enterprise Linux 生命週期 (英文)。

2 2024 年 10 月底,SLES v12 將從標準一般支援轉換為長期 Service Pack 支援 (LTSS)。 如需詳細資訊,請參閱 依產品的產品支援生命週期日期

3 在 2023 年 4 月底,Ubuntu 18.04 LTS 從標準維修轉換為擴充的安全性維修 (ESM)。 如需詳細資訊,請參閱 Ubuntu 18.04 終止標準支援

提示

如需詳細資訊,請檢閱適用於 Linux 上的 SQL Server 的系統需求。 如需適用於 SQL Server 的最新支援原則,請參閱 Microsoft SQL Server 的技術支援原則

您應該在支援的平台上執行生產工作負載,例如 Red Hat Enterprise LinuxSUSE Linux Enterprise ServerUbuntu Pro,因為它們會收到一般 OS 安全性更新,並具有企業資料庫部署所需的支持涵蓋範圍選項。

平台 檔案系統 安裝指南 Get
Red Hat Enterprise Linux 7.7 - 7.9 伺服器 1 或 8.x 伺服器 XFS 或 EXT4 安裝指南 取得 RHEL 8
SUSE Linux Enterprise Server v12 (SP3 - SP5) 2 或 v15 (SP1 - SP3) XFS 或 EXT4 安裝指南 取得 SLES v15
Ubuntu 18.04 3 或 20.04 XFS 或 EXT4 安裝指南 Get Ubuntu 20.04
Windows、Mac 或 Linux 上的 Docker Engine 1.8+ N/A 安裝指南 取得 Docker

1 在 2024 年 6 月底,RHEL 7.x 從主流維修轉換為延長生命週期支援 (ELS)。 如需詳細資訊,請參閱 Red Hat Enterprise Linux 生命週期 (英文)。

2 2024 年 10 月底,SLES v12 將從標準一般支援轉換為長期 Service Pack 支援 (LTSS)。 如需詳細資訊,請參閱 依產品的產品支援生命週期日期

3 在 2023 年 4 月底,Ubuntu 18.04 LTS 從標準維修轉換為擴充的安全性維修 (ESM)。 如需詳細資訊,請參閱 Ubuntu 18.04 終止標準支援

提示

如需詳細資訊,請檢閱適用於 Linux 上的 SQL Server 的系統需求。 如需適用於 SQL Server 的最新支援原則,請參閱 Microsoft SQL Server 的技術支援原則

您應該在支援的平台上執行生產工作負載,例如 Red Hat Enterprise LinuxSUSE Linux Enterprise ServerUbuntu Pro,因為它們會收到一般 OS 安全性更新,並具有企業資料庫部署所需的支持涵蓋範圍選項。

平台 檔案系統 安裝指南 Get
Red Hat Enterprise Linux 8.x 伺服器或 9.x 伺服器 XFS 或 EXT4 安裝指南 取得 RHEL 9
SUSE Linux Enterprise Server v15 (SP1 - SP4) XFS 或 EXT4 安裝指南 取得 SLES v15
Ubuntu 20.04 或 22.04 XFS 或 EXT4 安裝指南 取得 Ubuntu 22.04
Docker Engine 1.8+ (Linux) N/A 安裝指南 取得 Docker

提示

如需詳細資訊,請檢閱適用於 Linux 上的 SQL Server 的系統需求。 如需適用於 SQL Server 的最新支援原則,請參閱 Microsoft SQL Server 的技術支援原則

Microsoft 也支援使用 OpenShift 和 Kubernetes 來部署和管理 SQL Server 容器。

注意

SQL Server 已針對先前列出的發行版本,在 Linux 上經過測試並受到支援。 但如果選擇在不支援的作業系統上安裝 SQL Server,請檢閱 Microsoft SQL Server 的技術支援原則 \(機器翻譯\) 的<支援原則>一節以了解隱含的支援。

系統需求

SQL Server 具有下列適用於 Linux 的系統需求:

需求
記憶體 2 GB 1
檔案系統 XFSEXT4 (不支援其他檔案系統,例如 BTRFS)
磁碟空間 6 GB
處理器速度 2 GHz
處理器核心數 2 個核心
處理器類型 僅相容 x64

1 2 GB 是啟動 Linux 上的 SQL Server 所需的最小記憶體大小,可容納系統執行緒和內部進程。 設定最大伺服器記憶體MemoryLimitMB 時,您必須考慮此數量。

如果您在生產環境中使用網路檔案系統 (NFS) 遠端共用,請注意下列支援需求:

  • 使用 NFS 版本 4.2 或更新的版本。 舊版 NFS 不支援新式檔案系統常用的必要功能,例如 fallocate 和疏鬆檔案建立。
  • 僅尋找 NFS 掛接上的 /var/opt/mssql 目錄。 不支援其他檔案,例如 SQL Server 系統二進位檔案。

設定來源存放庫

當您安裝或升級 SQL Server 時,您會從已設定的 Microsoft 存放庫取得最新版本的 SQL Server。 快速入門會使用 SQL Server 的累積更新 CU 存放庫。 如需存放庫和其設定方式的詳細資訊,請參閱設定用於安裝和升級 Linux 上的 SQL Server 的存放庫

安裝 SQL Server

您可以從命令列在 Linux 上安裝 SQL Server。 如需逐步指示,請參閱下列其中一個快速入門:

平台 安裝快速入門
Red Hat Enterprise Linux (RHEL) 2017 | 2019 | 2022
SUSE Linux Enterprise Server (SLES) 2017 | 2019 | 2022
Ubuntu 2017 | 2019 | 2022
Docker 2017 | 2019 | 2022

您也可以在 Azure 虛擬機器的 Linux 上執行 SQL Server。 如需詳細資訊,請參閱在 Azure 中佈建 SQL VM

安裝之後,請考慮進行其他額外設定變更以獲得最佳效能。 如需詳細資訊,請參閱 Linux 上的 SQL Server 效能最佳做法和設定方針

更新或升級 SQL Server

若要將 mssql-server 套件更新為最新版本,請根據您的平台,使用下列其中一個命令:

平台 套件更新命令
RHEL sudo yum update mssql-server
SLES sudo zypper update mssql-server
Ubuntu sudo apt-get update
sudo apt-get install mssql-server

這些命令會下載最新的套件,並取代位於 /opt/mssql/ 底下的二進位檔。 使用者產生的資料庫和系統資料庫不會受到這項作業的影響。

若要升級 SQL Server,請先變更您設定的存放庫,將其設為所需的 SQL Server 版本。 然後使用相同的update命令來升級 SQL Server 版本。 只有在兩個存放庫之間支援升級路徑時,才會發生此步驟。

復原 SQL Server

若要將 SQL Server 復原或降級至先前的版本,請使用下列步驟:

  1. 確認要降級的目標 SQL Server 套件版本號碼。 如需封裝編號的清單,請參閱版本資訊:

  2. 降級為舊版 SQL Server。 在下列命令中,將 <version_number> 取代為您在步驟 1 中確認的 SQL Server 版本號碼。

    平台 套件更新命令
    RHEL sudo yum downgrade mssql-server-<version_number>.x86_64
    SLES sudo zypper install --oldpackage mssql-server=<version_number>
    Ubuntu sudo apt-get install mssql-server=<version_number>
    sudo systemctl start mssql-server

注意

其僅支援降級為降級到相同主要版本 (例如 SQL Server 2022 (16.x)) 中的版本。

檢查已安裝的 SQL Server 版本

若要驗證您 Linux 上的 SQL Server 目前的版本和版次,請使用下列程序:

  1. 如果尚未安裝,請參閲在 Linux 上安裝 SQL Server 命令列工具 sqlcmd 和 bcp

  2. 使用 sqlcmd 來執行 Transact-SQL 命令,以顯示您的 SQL Server 版本和版次。

    sqlcmd -S localhost -U SA -Q 'select @@VERSION'
    

解除安裝 SQL Server

若要移除 Linux 上的 mssql-server 套件,請根據您的平台,請使用下列其中一個命令:

平台 套件移除命令
RHEL sudo yum remove mssql-server
SLES sudo zypper remove mssql-server
Ubuntu sudo apt-get remove mssql-server

移除套件並不會刪除產生的資料庫檔案。 如果您想要刪除資料庫檔案,請使用下列命令:

sudo rm -rf /var/opt/mssql/

自動安裝

您可以透過下列方式執行自動安裝:

  • 遵循快速入門中的初始步驟來註冊存放庫,並安裝 SQL Server。
  • 當您執行 mssql-conf setup 時,請設定環境變數,並使用 [-n (無提示)] 選項。

下列範例會使用 MSSQL_PID 環境變數來設定 SQL Server Developer 版本。 它也會接受 EULA (ACCEPT_EULA),並設定 SA 使用者密碼 (MSSQL_SA_PASSWORD)。 -n 參數會執行無訊息安裝,其中會從環境變數提取設定值。

sudo MSSQL_PID=Developer ACCEPT_EULA=Y MSSQL_SA_PASSWORD='<YourStrong!Passw0rd>' /opt/mssql/bin/mssql-conf -n setup

您也可以建立指令碼來執行其他動作。 例如,您可以安裝其他 SQL Server 套件。

如需更詳細的範例指令碼,請參閱下列範例:

離線安裝

如果您的 Linux 電腦無法存取快速入門中使用的線上儲存機制,您可以直接下載封裝檔案。 這些套件位於 Microsoft 存放庫 https://packages.microsoft.com 中。

提示

如果已在快速入門的步驟中順利安裝,則不需要下載或以手動方式安裝 SQL Server 套件。 本節只適用於離線情節。

  1. 下載適用於您平台的資料庫引擎套件。 在版本資訊的 [套件詳細資料] 區段中尋找套件下載連結。

  2. 將已下載套件移至您的 Linux 電腦。 如果您使用不同電腦來下載套件,將套件移至 Linux 電腦的其中一種方式是使用 scp 命令。

  3. 安裝資料庫引擎套件。 根據您的平台,使用下列其中一個命令。 將此範例中的套件檔案名稱取代為您下載的確切名稱。

    平台 套件安裝命令
    RHEL sudo yum localinstall mssql-server_versionnumber.x86_64.rpm
    SLES sudo zypper install mssql-server_versionnumber.x86_64.rpm
    Ubuntu sudo dpkg -i mssql-server_versionnumber_amd64.deb

    注意

    您也可以使用 rpm -ivh 命令來安裝 RPM 套件 (RHEL 和 SLES),但是上表中的命令會自動安裝相依性 (如果可以從已核准的存放庫中取得)。

  4. 解決遺漏的相依性:此時,您可能會遺漏某些相依性。 如果沒有,則您可以略過此步驟。 在 Ubuntu 上,如果您可以存取包含這些相依性的已核准存放庫,最簡單的解決方案就是使用 apt-get -f install 命令。 此命令也會完成 SQL Server 的安裝。 若要手動檢查相依性,請使用下列命令:

    平台 列出相依性命令
    RHEL rpm -qpR mssql-server_versionnumber.x86_64.rpm
    SLES rpm -qpR mssql-server_versionnumber.x86_64.rpm
    Ubuntu dpkg -I mssql-server_versionnumber_amd64.deb

    解決遺失的相依性之後,再次嘗試安裝 mssql-server 套件。

  5. 完成 SQL Server 安裝程式。 使用 mssql-conf 來完成 SQL Server 安裝程式:

    sudo /opt/mssql/bin/mssql-conf setup
    

授權和定價

SQL Server 在 Linux 和 Windows 上都有相同的授權。 如需 SQL Server 授權和定價的詳細資訊,請參閱如何授權 SQL Server 以及 SQL Server 授權資源與文件

SQL Server 選用功能

安裝之後,您也可以安裝或啟用選用的 SQL Server 功能。

取得協助

參與編輯 SQL 文件

您知道您可以自行編輯 SQL 內容嗎? 這樣做不僅可以協助改善文件,也能名列該頁面的參與者。

如需詳細資訊,請參閱如何參與 SQL Server 文件