我想在 linux 環境下嘗試一下 Microsoft SQL Server,但是微軟只發布了針對 Red Hat,SUSE,Ubuntu 和 Docker 引擎的。我平時習慣使用 Debian, Ubuntu 是基於 Debian 的,所以就基本按照在 Ubuntu 上安裝的方法在 Debian 上安裝,最終成功安裝了。
系統要求
SQL Server 2017 具有以下適用於 Linux 的系統要求:
內存 | 2 GB |
---|---|
文件系統 | XFS或EXT4 (其他文件系統,如BTRFS,均不受支持) |
磁盤空間 | 6 GB |
處理器速度 | 2 GHz |
處理器核心 | 2個核心 |
處理器核心 | 僅 x64 兼容 |
安裝 SQL Server
若要在 Ubuntu 上配置 SQL Server ,在終端中運行以下命令安裝mssql server包。
- 導入公共存儲庫 GPG 密鑰:
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
- 注冊 Microsoft SQL Server Ubuntu 存儲庫:
curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list | sudo tee /etc/apt/sources.list.d/mssql-server.list
- 運行以下命令,安裝 SQL Server:
sudo apt-get update sudo apt-get install -y mssql-server
- 程序包安裝完成后,請運行 mssql-conf setup 命令並按提示設置 SA 密碼,然后選擇版本。
sudo /opt/mssql/bin/mssql-conf setup
備注
請確保為 SA 帳戶指定強密碼(最少 8 個字符,包括大寫和小寫字母、十進制數字和/或非字母數字符號)。
- 配置完成后,請驗證服務是否正在運行:
systemctl status mssql-server
- 如果你打算遠程連接,你可能還需要打開防火牆上的 SQL Server TCP 端口 (默認值為 1433)。
- 安裝 firewalld 工具包並設置防火牆開啟 SQL Server 服務端口:
sudo apt install firewalld firewall-cmd --zone=public --add-port=1433/tcp --permanent firewall-cmd --reload
安裝 SQL Server 命令行工具
若要創建數據庫,需要使用一個能夠在 SQL Server 上運行 Transact-SQL 語句的工具進行連接。 以下步驟安裝 SQL Server 命令行工具: sqlcmd和bcp。
使用以下步驟來安裝 mssql-tools。
- 導入公共存儲庫 GPG 密鑰。
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
- 注冊 Microsoft Ubuntu 存儲庫。
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
- 更新源列表,並安裝SQL Server工具包。
sudo apt-get update sudo apt-get install mssql-tools unixodbc-dev
- Sqlcmd 工具默認安裝到
/opt/mssql-tools/bin/
中的,為方便使用把/opt/mssql-tools/bin/
添加到環境變量中。
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/.bashrc
本地連接
以下步驟使用 sqlcmd 本地連接到新的 SQL Server 實例。
使用 SQL Server 名稱 (-S),用戶名 (-U) 的參數運行 sqlcmd。 在本教程中,用戶進行本地連接,因此服務器名稱為 localhost。 用戶名為 SA 。
sqlcmd -S localhost -U SA -P '<YourPassword>'