在Ubuntu下安裝Microsoft SQL Server 2022

單純記錄在Linux環境中(Ubuntu 22.04)安裝Microsoft SQL Server 2022的歷程,沒有啥營養。

事前確認

確認你的Linux版本是Ubuntu 22.04,如果搞錯版本會變得困難重重一堆錯誤,因為微軟目前只有支援幾個OS版本。另外就是Ubuntu安裝時期會有自動升級的選項,請在安裝過程中防範這個選項被勾選到,否則會導致安裝到一半一噴出錯誤的機率極高。可以輸入下列指令查詢Ubuntu的版本號:

lsb_release -a

先切換到root

先把每個步驟都在那邊煩人的sudo消除掉,直接切換到root。

sudo -i

匯入公開存放庫 GPG 金鑰

依據微軟官方文件把GPG金鑰匯入儲存至主機:

curl -fsSL https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg

更新公開金鑰簽名:

curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc

如果你沒有更新公開金鑰簽名,會在apt-get update時期噴出下列類似金鑰簽名失敗錯誤:

W: GPG error: https://packages.microsoft.com/ubuntu/22.04/mssql-server-2022 jammy InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY EB3E94ADBE1229CF

手動下載並註冊SQL Server Ubuntu存放庫

指定mssql-server-2022版本:

curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2022.list | sudo tee /etc/apt/sources.list.d/mssql-server-2022.list

透過apt-get安裝SQL Server 2022

apt-get update
apt-get install -y mssql-server

設定SQL Server 2022

進入設定模式

/opt/mssql/bin/mssql-conf setup

測試用途建議選擇Developer版本、允許授權協議,並且設定密碼,設定後系統會自動幫你把SQL Server運行起來。

設定SQL Server的定序

首先要將SQL Server執行狀態進行關閉

systemctl stop mssql-server

設定定序,基本上台灣最常見的預設值就是設定Chinese_Taiwan_Stroke_CI_AS,亦即:筆畫排序、不區分大小寫、區分腔調字。

/opt/mssql/bin/mssql-conf set-collation

Enter the collation: Chinese_Taiwan_Stroke_CI_AS

設定之後重新將SQL Server開啟即可

systemctl start mssql-server

查看SQL Server 2022運行狀態

透過下列指令,如果在Console中有看到綠色的active (runnung)就代表有跑起來了。

systemctl status mssql-server

重新啟動SQL Server

systemctl restart mssql-server

關閉SQL Server

systemctl stop mssql-server

如果伺服器上面有SQL Server的且需要關機的話,最好先將SQL Server服務停止再進行關機比較不會造成寫入中斷之類的問題。

systemctl stop mssql-server
shutdown -h now

透過SSMS進行連線測試

首先在Ubuntu查詢本機IP,取得IP位址後以便連線SSMS。

ip address

開啟SSMS輸入sa帳號與剛才設定的密碼,證明進行資料庫的連線沒有錯誤。(若有問題請檢查防火牆是否有阻擋)

相關連結

Linux Ubuntu Install Setup MicrosoftSqlServer MsSQL MS-SQL Mssql-Server 2017 2019 2022 StepByStep