在 Debian 上安装 SQL Server(一般指 Microsoft SQL Server on Linux)时出错,多半是源、依赖或系统兼容性的问题。下面按最常见原因 → 解决办法给你一个排查清单,基本都能搞定。
SQL Server 官方只支持部分 Debian 版本:
查看系统版本:
cat /etc/os-release
⚠️ 如果是 Debian 10 或 Ubuntu 非 LTS,不建议强装,容易报错。
报错示例:
NO_PUBKEYRepository is not signed404 Not Found✅ 解决步骤(Debian 11/12 通用):
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg
然后添加源(以 Debian 11 为例):
echo "deb [signed-by=/usr/share/keyrings/microsoft-prod.gpg] https://packages.microsoft.com/debian/11/prod bullseye main" \
> /etc/apt/sources.list.d/mssql-release.list
更新:
apt update
报错示例:
libssl.so.1.1 not foundunixodbc not installed✅ 安装依赖:
apt install -y \
libssl1.1 \
libldap-2.4-2 \
libsasl2-2 \
unixodbc \
libodbc1
⚠️ Debian 12 注意:
SQL Server 最少需要 2GB RAM,否则会安装成功但启动失败。
查看内存:
free -h
内存不足时:
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
✅ 正确流程:
apt update
apt install -y mssql-server
初始化:
/opt/mssql/bin/mssql-conf setup
查看日志:
journalctl -u mssql-server -xe
常见原因:
如果你只是想用 SQL Server,而不是研究安装:
docker run -e "ACCEPT_EULA=Y" \
-e "SA_PASSWORD=YourStrong!Pass123" \
-p 1433:1433 \
-d mcr.microsoft.com/mssql/server:2022-latest
✅ 几乎 100% 不会出错
如果你愿意,把错误原文贴出来,比如:
/opt/mssql/bin/mssql-conf setup 的报错systemctl status mssql-server我可以直接帮你精准定位 ✅