温馨提示×

debian下sqlserver如何升级

小樊
43
2026-10-07 11:53:09
栏目: 云计算

在 Debian 系统下升级 Microsoft SQL Server(mssql-server)通常分为 同一大版本内的小版本升级(补丁/累积更新) 和 跨大版本升级(如 2019 → 2022)。下面分别说明。


一、准备工作(非常重要)

1. 备份数据库

sqlcmd -S localhost -U sa -Q "BACKUP DATABASE [数据库名] TO DISK='/var/opt/mssql/backup/db.bak'"

或直接备份整个 /var/opt/mssql 目录。

2. 查看当前版本

sqlcmd -S localhost -U sa -Q "SELECT @@VERSION"

或

apt list --installed | grep mssql-server

3. 确认系统版本

cat /etc/debian_version

SQL Server 支持的 Debian 版本有限(通常是 Debian 10/11/12)。


二、同一大版本内升级(推荐、简单)

例如:SQL Server 2019 CU10 → CU18

1. 更新 apt 源

sudo apt update

2. 升级 mssql-server

sudo apt install mssql-server

或

sudo apt upgrade mssql-server

3. 重启服务

sudo systemctl restart mssql-server

4. 验证版本

sqlcmd -S localhost -U sa -Q "SELECT @@VERSION"

✅ 不需要重新运行 mssql-conf setup


三、跨大版本升级(如 2019 → 2022)

⚠️ 不支持“直接 in-place 大版本升级”,官方推荐方式是:

方式一(推荐):新服务器安装 + 迁移

  1. 在新 Debian 上安装新版本 SQL Server
  2. 使用备份还原或 sqlpackage / bcp 迁移数据

方式二:同机卸载旧版再安装新版(有风险)

sudo systemctl stop mssql-server
sudo apt remove mssql-server
sudo apt autoremove

然后:

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

sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/debian/12/mssql-server-2022.list)"

sudo apt update
sudo apt install mssql-server
sudo /opt/mssql/bin/mssql-conf setup

⚠️ 注意:

  • 卸载不会删除 /var/opt/mssql
  • 新版本可能不兼容旧数据文件,需先备份

四、常见问题

1. apt 找不到新版本

检查源是否正确:

cat /etc/apt/sources.list.d/mssql-server.list

Debian 12 示例:

deb [arch=amd64] https://packages.microsoft.com/debian/12/mssql-server-2022 main

2. 升级后无法启动

查看日志:

journalctl -u mssql-server -n 100

或

cat /var/opt/mssql/log/errorlog

五、官方文档参考

  • https://learn.microsoft.com/sql/linux/sql-server-linux-upgrade
  • https://learn.microsoft.com/sql/linux/quickstart-install-connect-debian

如果你能告诉我:

  • Debian 版本
  • 当前 SQL Server 版本
  • 目标版本

我可以给你精确到命令的升级方案。

0 踩