SQL Server 在 Debian 上的更新策略
支持与总体策略
- 在 Debian 上,微软并未将 SQL Server for Linux 列为官方受支持平台;官方主要支持 Red Hat Enterprise Linux、SUSE Linux Enterprise Server、Ubuntu 以及 Docker。因此,Debian 上的更新通常属于“尽力而为”的方案:优先采用微软提供的通用 Linux 安装与更新机制(如 mssql-server 包与 GPG 签名仓库),但需接受补丁节奏、兼容性与故障排查能力弱于受支持平台的事实。若需生产级可支持性,建议改用受支持的发行版或容器化部署。
推荐的更新流程
- 更新前准备
- 全量备份关键数据库与系统配置;确认目标 SQL Server 版本与依赖的兼容性;阅读当期变更说明与已知问题。
- 系统与仓库准备
- 确保系统包索引与依赖为最新;导入微软 GPG 密钥并配置正确的 APT 源(选择与系统版本匹配的微软仓库条目,例如 Debian 12 的 prod 仓库)。
- 执行更新
- 方式 A(推荐):通过 APT 执行包升级(如执行 apt-get update && apt-get install --only-upgrade mssql-server),保持与微软仓库版本一致。
- 方式 B(备选):下载 .deb 更新包,使用 dpkg 安装并按需修复依赖(dpkg -i 包名;遇到依赖问题执行 apt-get install -f),适用于离线或仓库不一致场景。
- 更新后验证
- 检查服务状态(systemctl status mssql-server);登录数据库执行 SELECT @@VERSION 验证版本与补丁级别;必要时重启服务并复核应用连接与作业。
版本与升级路径
- 小版本与安全补丁:通过微软的 APT 仓库持续获取 mssql-server 的安全修复与小版本升级,保持与仓库版本一致即可。
- 跨版本升级:遵循微软的版本升级路径(如从 2019 升级到 2022),先完成全量备份与兼容性评估,再按官方步骤执行升级;不建议跨多版本跳跃升级。
- 操作系统升级:在升级 Debian 主版本前,先在测试环境验证 SQL Server 的可用性与依赖兼容性;升级系统后,复核仓库与 GPG 配置,确保能继续从微软源获取包。
风险与最佳实践
- 支持与兼容性:Debian 为“非官方支持”路径,可能面临依赖冲突、功能限制与社区资料较少等问题;生产环境优先选用 Ubuntu/RHEL/SUSE 或 Docker 以获得完整支持与优化。
- 回滚与应急:更新前保留可用的旧版包与回滚方案;更新失败可回滚到上一个 mssql-server 版本或恢复数据库备份,缩短停机时间。
- 安全与加固:更新完成后复核 SA 强密码策略、仅开放必要端口(默认 1433)、限制来源网段并启用防火墙;定期应用安全补丁与审计日志。