Linux 上 SQL Server 2019 的版本資訊

適用於: SQL Server 2019 (15.x) - Linux

下列版本資訊適用於在 Linux 上執行的 SQL Server 2019 (15.x)。 此文章已針對每個版本細分為數個小節。 如需詳細的支援性和已知問題,請參閱已知問題。 每個版本都具有描述變更的支援文章連結,以及能下載 Linux 套件的連結。

這些版本資訊專門適用於 SQL Server 2019 (15.x) 版本。 如需其他版本的版本資訊,請參閱下列文章:

支援的平台

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

1 Ubuntu 16.04 上的 SQL Server 支援有限。 在 2021 年 4 月底,Ubuntu 16.04 已從其長期支援 (LTS) 版本的標準五年維護期間,轉換為延長的安全性維護 (ESM) 支援。 如需詳細資訊,請參閱 Ubuntu 16.04 LTS 轉換為延長的安全性維護 (ESM) | Ubuntu

提示

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

工具

以 SQL Server 為目標的大部分現有用戶端工具,都可以順暢地以在 Linux 上執行的 SQL Server 為目標。 某些工具可能需要特定版本,才能與 Linux 良好搭配運作。 如需 SQL Server 工具的完整清單,請參閱適用於 SQL Server 的 SQL 工具和公用程式

所有套件的最新版本

此節列出 SQL Server 2019 每個發行版本之每個套件的最新版本。 下表顯示最新的版本,也就是 CU 22 。 如需完整版本歷程記錄,請參閱 SQL Server 2019 的版本歷程記錄

版本 版本 Date 組建 知識庫文章
SQL Server 2019 (15.x) CU 22 2023-08-14 15.0.4322.2 支援文件
散發 套件名稱 套件版本 下載
Red Hat Enterprise Linux
RHEL 8 Database Engine 15.0.4322.2-1 資料庫引擎 RPM 套件
RHEL 8 擴充性 15.0.4322.2-1 擴充性 RPM 套件
RHEL 8 全文檢索搜尋 15.0.4322.2-1 全文檢索搜尋 RPM 套件
RHEL 8 高可用性 15.0.4322.2-1 高可用性 RPM 套件
RHEL 8 Java 擴充性 15.0.4322.2-1 Java 擴充性 RPM 套件
RHEL 8 PolyBase 15.0.4322.2-1 PolyBase RPM 套件
RHEL 8 SSIS 15.0.4063.15-88 SSIS RPM 套件
SUSE Enterprise Linux Server
SLES 15 Database Engine 15.0.4322.2-1 資料庫引擎 RPM 套件
SLES 15 擴充性 15.0.4322.2-1 擴充性 RPM 套件
SLES 15 全文檢索搜尋 15.0.4322.2-1 全文檢索搜尋 RPM 套件
SLES 15 高可用性 15.0.4322.2-1 高可用性 RPM 套件
SLES 15 Java 擴充性 15.0.4322.2-1 Java 擴充性 RPM 套件
SLES 15 PolyBase 15.0.4322.2-1 PolyBase RPM 套件
Ubuntu \(英文\)
Ubuntu 20.04 Database Engine 15.0.4322.2-1 資料庫引擎 Debian 套件
Ubuntu 20.04 擴充性 15.0.4322.2-1 擴充性 Debian 套件
Ubuntu 20.04 全文檢索搜尋 15.0.4322.2-1 全文檢索搜尋 Debian 套件
Ubuntu 20.04 高可用性 15.0.4322.2-1 高可用性 Debian 套件
Ubuntu 20.04 Java 擴充性 15.0.4322.2-1 Java 擴充性 Debian 套件
Ubuntu 20.04 PolyBase 15.0.4322.2-1 PolyBase Debian 套件
Ubuntu 18.04 SSIS 15.0.4153.1-89 SSIS Debian 套件

如何安裝更新

當您設定 CU 存放庫 (mssql-server-2019) 時,會在執行新安裝時取得 SQL Server 套件的最新 CU。 如果您需要 Docker 容器映像,請參閱Linux 上適用於 Docker 引擎的 Microsoft SQL Server 官方映像。 如需有關存放庫設定的詳細資訊,請參閱針對 Linux 上的 SQL Server 設定存放庫

如果您正在更新現有的 SQL Server 套件,請針對每個套件執行適當的更新命令以取得最新的 CU。 如需每個套件的特定更新指示,請參閱下列安裝指南:

版本歷程記錄

下表列出 SQL Server 2019 (15.x) 的版本歷程記錄。

版本 版本 發行日期
CU 22 15.0.4322.2 2023-08-14
CU 21 15.0.4316.3 2023-06-15
CU 20 15.0.4312.2 2023-04-13
CU 19 15.0.4298.1 2023-02-16
CU 18 GDR 15.0.4280.7 2023-02-14
CU 18 15.0.4261.1 2022-09-28
CU 17 15.0.4249.2 2022-08-11
CU 16 GDR 15.0.4236.7 2022-06-14
CU 16 15.0.4223.1 2022-04-18
CU 15 15.0.4198.2 2022-01-27
CU 14 15.0.4188.2 2021-11-22
CU 13 15.0.4178.1 2021-10-05
CU 12 15.0.4153.1 2021-08-04
CU 11 15.0.4138.2 2021-06-10
CU 10 15.0.4123.1 2021-04-06
CU 9 15.0.4102.2 2021-02-10
CU 8 GDR 15.0.4083.2 2021-01-12
GDR 1 15.0.2080.9 2021-01-12
CU 8 15.0.4073.23 2020-10-07
CU 7 (已移除) 15.0.4063.15 2020-09-02
CU 6 15.0.4053.23 2020-08-04
CU 5 15.0.4043.16 2020-06-22
CU 4 15.0.4033.1 2020-03-31
CU 3 15.0.4023.6 2020-03-12
CU 2 15.0.4013.40 2020-02-13
CU 1 15.0.4003.23 2020-01-07
GA 15.0.2000.5 2019-11-04

已知問題

下列各節描述 Linux 上 SQL Server 2019 (15.x) 的已知問題。

一般

  • SQL Server 安裝位置的主機名稱長度必須等於或少於 15 個字元。

    • 解決方法:將 /etc/hostname 中的名稱長度變更為等於或少於 15 個字元。
  • 手動將系統時間設定成過去的時間會造成 SQL Server 停止更新 SQL Server 內的內部系統時間。

    • 解決方法:重新啟動 SQL Server。
  • 僅支援單一執行個體安裝。

    • 解決方法:如果您想要在指定的主機上有多個執行個體,請考慮使用 VM 或 Docker 容器。
  • SQL Server 組態管理員無法連線到 Linux 上的 SQL Server。

  • sa 登入的預設語言是英文。

    • 解決方法:使用 ALTER LOGIN陳述式來變更 sa 登入的語言。
  • OLEDB 提供者會記錄下列警告:Failed to verify the Authenticode signature of 'C:\binn\msoledbsql.dll'. Signature verification of SQL Server DLLs will be skipped. Genuine copies of SQL Server are signed. Failure to verify the Authenticode signature might indicate that this is not an authentic release of SQL Server. Install a genuine copy of SQL Server or contact customer support.

    • 解決方法:您不需要執行任何動作。 OLEDB 提供者是使用 SHA256 簽署的。 SQL Server 資料庫引擎不會正確地驗證已簽署的 .dll。

資料庫

  • 無法使用 mssql-conf 公用程式來移動 master 資料庫。 可以使用 mssql-conf 來移動其他系統資料庫。

  • 還原在 Windows 上 SQL Server 備份的資料庫時,必須使用 Transact-SQL 陳述式中的 WITH MOVE 子句。

  • 某些適用於「傳輸層安全性」(TLS) 的演算法 (加密套件) 在 Linux 的 SQL Server 上正常運作。 這除了會導致在高可用性群組中的複本之間建立連線時發生問題,也會導致在嘗試連線至 SQL Server 時發生連線失敗。

    • 解決方法:執行下列動作,修改 Linux 上 SQL Server 的 mssql.conf 組態指令碼以停用有問題的加密套件:

      1. 將下方內容新增至 /var/opt/mssql/mssql.conf

        [network]
        tlsciphers=AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:!ECDHE-RSA-AES128-GCM-SHA256:!ECDHE-RSA-AES256-GCM-SHA384:!ECDHE-ECDSA-AES256-GCM-SHA384:!ECDHE-ECDSA-AES128-GCM-SHA256:!ECDHE-ECDSA-AES256-SHA384:!ECDHE-ECDSA-AES128-SHA256:!ECDHE-ECDSA-AES256-SHA:!ECDHE-ECDSA-AES128-SHA:!ECDHE-RSA-AES256-SHA384:!ECDHE-RSA-AES128-SHA256:!ECDHE-RSA-AES256-SHA:!ECDHE-RSA-AES128-SHA:!DHE-RSA-AES256-GCM-SHA384:!DHE-RSA-AES128-GCM-SHA256:!DHE-RSA-AES256-SHA:!DHE-RSA-AES128-SHA:!DHE-DSS-AES256-SHA256:!DHE-DSS-AES128-SHA256:!DHE-DSS-AES256-SHA:!DHE-DSS-AES128-SHA:!DHE-DSS-DES-CBC3-SHA:!NULL-SHA256:!NULL-SHA
        

        注意

        在上述程式碼中,! 會否定運算式。 這告訴 OpenSSL 不要使用下列加密套件。

      2. 使用下列命令來重新啟動 SQL Server。

        sudo systemctl restart mssql-server
        
  • Windows 上使用記憶體內部 OLTP 的 SQL Server 2014 (12.x) 資料庫無法在 Linux 上的 SQL Server 進行還原。 若要還原使用記憶體內部 OLTP 的 SQL Server 2014 (12.x) 資料庫,請先將資料庫升級到 Windows 上的新版 SQL Server,然後透過備份/還原或中斷連結/連結來將資料庫移到 Linux 上的 SQL Server。

  • Linux 上目前不支援 ADMINISTER BULK OPERATIONS 使用者權限。

  • 使用 SQL Server 2019 (15.x) CU 16 和更新版本製作的 TDE 壓縮備份,無法還原至 SQL Server 2019 (15.x) 的舊版 CU。 如需詳細資訊,請參閱修正:執行 RESTORE LOG 或 RESTORE DATABASE 時發生錯誤 3241

    使用 SQL Server 2019 (15.x) 的舊版 CU 製作的透明資料加密 (TDE) 壓縮備份,仍可使用 SQL Server 2019 (15.x) CU 16 和更新版本還原。

網路

下列兩個條件都成立時,涉及來自 sqlservr 程序之連出 TCP 連線的功能 (例如連結的伺服器、PolyBase 或可用性群組) 可能無法運作:

  1. 以主機名稱的形式而不是 IP 位址來指定目標伺服器。

  2. 來源執行個體的核心中已停用 IPv6。 若要確認您系統的核心中是否已啟用 IPv6,必須通過下列所有測試:

    • cat /proc/cmdline 會列印目前核心的開機 cmdline。 輸出不得包含 ipv6.disable=1
    • /proc/sys/net/ipv6/ 目錄必須存在。
    • 呼叫 socket(AF_INET6, SOCK_STREAM, IPPROTO_IP) 的 C 程式應該成功;syscall 必須傳回 fd != -1 且未因 EAFNOSUPPORT 而發生失敗。

確切的錯誤需視功能而定。 就連結的伺服器而言,這會顯示為登入逾時錯誤。 就可用性群組而言,次要複本上的 ALTER AVAILABILITY GROUP JOIN DDL 會在 5 分鐘後因 download configuration timeout 錯誤而發生失敗。

若要解決這個問題,請執行下列其中一個動作:

  1. 使用 IP 而不是主機名稱來指定 TCP 連線的目標。

  2. 從開機命令列中移除 ipv6.disable=1 以在核心中啟用 IPv6。 執行此動作的方式取決於 Linux 發行版本和開機載入器 (例如 grub)。 如果想要停用 IPv6,您仍然可以透過在 sysctl 組態 (例如 /etc/sysctl.conf) 中設定 net.ipv6.conf.all.disable_ipv6 = 1 來停用。 這仍會阻止系統的網路介面卡取得 IPv6 位址,但可讓 sqlservr 功能正常運作。

網路檔案系統 (NFS)

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

  • 使用 NFS 版本 4.2 或更新的版本。 舊版 NFS 不支援新式檔案系統常用的必要功能,例如 fallocate 和疏鬆檔案建立。

  • 僅尋找 NFS 掛接上的 /var/opt/mssql 目錄。 不支援其他檔案,例如 SQL Server 系統二進位檔案。

  • 確定 NFS 用戶端在裝載遠端共用時使用 nolock 選項。

當地語系化

  • 如果進行設定期間您的地區設定不是英文 (en_us),您就必須在 bash 工作階段/終端機中使用 UTF-8 編碼。 如果您使用 ASCII 編碼,可能會看到類似以下的錯誤:

    UnicodeEncodeError: 'ascii' codec can't encode character u'\xf1' in position 8: ordinal not in range(128)
    

    如果您無法使用 UTF-8 編碼,請使用 MSSQL_LCID 環境變數來指定您的語言選擇以執行設定。

    sudo MSSQL_LCID=<LcidValue> /opt/mssql/bin/mssql-conf setup
    
  • 執行 mssql-conf setup 及執行非英文的 SQL Server 安裝時,「正在設定 SQL Server...」當地語系化文字後面會顯示不正確的擴充字元。 或者,針對非拉丁文的安裝,此句子可能會完全遺失。 遺失的句子應該會顯示下列當地語系化字串:

    The licensing PID was successfully processed. The new edition is [<Name> edition].

    此字串的輸出只是用來提供資訊,下一個 SQL Server 累積更新將會處理所有語言的這個問題。 這不會以任何方式影響成功的 SQL Server 安裝。

此版本並未提供所有篩選條件,包括適用於 Microsoft Office 文件的篩選條件。 如需所支援篩選的清單,請參閱在 Linux 上安裝 SQL Server 全文檢索搜尋

SQL Server Integration Services (SSIS)

此版本中在 SUSE 上不支援 mssql-server-is 套件。 目前在 Ubuntu 和 Red Hat Enterprise Linux (RHEL) 上支援此套件。

Integration Services 套件可以在 Linux 上使用 ODBC 連線。 此功能已經過 SQL Server 和 MySQL ODBC 驅動程式的測試,但也應該能夠與任何遵循 ODBC 規格的 Unicode ODBC 驅動程式搭配使用。 在設計階段,您可以提供 DSN 或連接字串來連接到 ODBC 資料;您也可以使用 Windows 驗證。 如需詳細資訊,請參閱宣佈在 Linux 上提供 ODBC 支援的部落格文章 \(英文\)。

在 Linux 上執行 SSIS 套件時,此版本不支援下列功能:

  • Integration Services 目錄資料庫
  • SQL Agent 排定的套件執行
  • Windows 驗證
  • 協力廠商元件
  • 異動資料擷取 (CDC)
  • Integration Services Scale Out
  • 適用於 SSIS 的 Azure Feature Pack
  • Hadoop 和 HDFS 支援
  • Microsoft Connector for SAP BW

如需目前不支援或支援但有限制的內建 SSIS 元件清單,請參閱 Linux 上的 SSIS 限制和已知問題

如需有關 Linux 上 SSIS 的詳細資訊,請參閱下列文章:

SQL Server Management Studio (SSMS)

下列限制適用於連線到 Linux 上的 SQL Server 之 Windows 上的 SQL Server Management Studio。

  • 不支援維護計劃。

  • 不支援 SQL Server Management Studio 中的管理資料倉儲 (MDW) 和資料收集器。

  • 具有 Windows 驗證或 Windows 事件記錄檔選項的 SQL Server Management Studio UI 元件無法與 Linux 搭配使用。 您仍然可以將這些功能與其他選項搭配使用,例如 SQL 登入。

  • 無法修改要保留的記錄檔數目。

另請參閱

下一步