温馨提示×

Debian如何配置SQL Server

小樊
44
2026-07-01 16:02:02
栏目: 云计算

在 Debian 上配置 Microsoft SQL Server(官方支持 Debian 10/11/12),可以按下面步骤来。下面以 SQL Server 2019 / 2022 为例,流程基本通用。


一、系统要求

  • Debian 10 (Buster) / 11 (Bullseye) / 12 (Bookworm)
  • 内存 ≥ 2GB
  • CPU 64 位
  • root 或 sudo 权限

二、添加 Microsoft SQL Server 源

1️⃣ 安装依赖

sudo apt update
sudo apt install -y curl wget gnupg apt-transport-https

2️⃣ 导入 Microsoft GPG 密钥

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

3️⃣ 添加 SQL Server 仓库(以 Debian 11 为例)

SQL Server 2019

echo "deb [signed-by=/usr/share/keyrings/microsoft-archive-keyring.gpg] https://packages.microsoft.com/debian/11/prod stable main" | \
sudo tee /etc/apt/sources.list.d/mssql-release.list

SQL Server 2022

echo "deb [signed-by=/usr/share/keyrings/microsoft-archive-keyring.gpg] https://packages.microsoft.com/debian/11/prod stable main" | \
sudo tee /etc/apt/sources.list.d/mssql-release.list

Debian 10 / 12 只需把 11 替换为 1012


三、安装 SQL Server

sudo apt update
sudo apt install -y mssql-server

四、初始化 SQL Server

运行配置工具:

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

会提示:

  1. 选择版本
    • Evaluation / Developer / Express(免费)
  2. 接受许可协议
  3. 设置 SA 密码(必须强密码)

✅ 成功后服务会自动启动


五、验证服务状态

systemctl status mssql-server

启动 / 重启 / 停止:

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

六、配置防火墙(如有)

SQL Server 默认端口:1433

sudo ufw allow 1433/tcp

七、安装命令行工具(可选但推荐)

安装 sqlcmdbcp

curl https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg
echo "deb [signed-by=/usr/share/keyrings/microsoft-prod.gpg] https://packages.microsoft.com/debian/11/prod stable main" | \
sudo tee /etc/apt/sources.list.d/msprod.list

sudo apt update
sudo apt install -y mssql-tools unixodbc-dev

加入 PATH:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc

八、连接 SQL Server

sqlcmd -S localhost -U SA -P '你的密码'

测试 SQL:

SELECT @@VERSION;
GO

九、常见问题

❌ 内存不足

sqlservr: This program requires a machine with at least 2000 megabytes of memory

✅ 增加内存或使用 Express 版


❌ Debian 12 兼容性

  • SQL Server 2022 支持 Debian 12
  • 老版本可能不完全支持

❌ 无法远程连接

检查:

sudo /opt/mssql/bin/mssql-conf set network.tcpport 1433
sudo systemctl restart mssql-server

十、常用配置示例

修改数据目录

sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /data/mssql/data
sudo /opt/mssql/bin/mssql-conf set filelocation.defaultlogdir /data/mssql/log

如果你需要:

  • Docker 方式部署
  • 中文排序规则
  • 与 .NET / Python / PHP 连接
  • 主从 / Always On

可以直接告诉我你的使用场景。

0