确保Debian系统为最新状态,避免因系统包版本过低导致兼容性问题:
sudo apt update && sudo apt upgrade -y
升级前务必备份所有重要数据库,防止数据丢失。可使用sqlcmd工具执行备份:
sqlcmd -S localhost -U sa -P 'YourStrongPassword' -Q "BACKUP DATABASE [YourDatabaseName] TO DISK = '/var/opt/mssql/backup/YourDatabaseName.bak'"
确认当前SQL Server版本,明确升级路径:
/opt/mssql/bin/mssql-conf --version
# 或通过SQL命令查询
sqlcmd -S localhost -U sa -P 'YourStrongPassword' -Q "@@VERSION"
参考Microsoft官方文档,确认目标版本是否支持当前Debian版本及硬件配置(如x64架构、至少2GB内存、6GB磁盘空间等)。
确保系统使用最新的SQL Server存储库(以Debian 12为例,若系统版本升级需调整存储库路径):
# 导入Microsoft GPG密钥(用于验证软件包签名)
curl https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-archive-keyring.gpg
# 添加SQL Server存储库(替换debian/12为当前Debian版本,如debian/11对应Debian 11)
echo "deb [signed-by=/usr/share/keyrings/microsoft-archive-keyring.gpg] https://packages.microsoft.com/debian/12/prod stable main" | sudo tee /etc/apt/sources.list.d/mssql-server.list > /dev/null
刷新包列表,执行升级命令。apt会自动处理依赖关系并升级SQL Server及相关组件:
sudo apt update
sudo apt install --only-upgrade mssql-server -y
升级完成后,重启服务以应用新版本:
sudo systemctl restart mssql-server
再次检查SQL Server版本,确认升级成功:
/opt/mssql/bin/mssql-conf --version
# 或通过SQL命令查询
sqlcmd -S localhost -U sa -P 'YourStrongPassword' -Q "@@VERSION"
若升级过程中出现依赖错误,可尝试修复:
sudo apt --fix-broken install -y
sudo apt install -f -y
若Debian版本升级(如从Debian 11升级到12),需修改存储库路径中的debian/X(X为Debian主版本号),并重新导入GPG密钥:
# 删除旧密钥
sudo rm /usr/share/keyrings/microsoft-archive-keyring.gpg
# 重新导入密钥
curl https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-archive-keyring.gpg
# 更新存储库路径(以Debian 12为例)
echo "deb [signed-by=/usr/share/keyrings/microsoft-archive-keyring.gpg] https://packages.microsoft.com/debian/12/prod stable main" | sudo tee /etc/apt/sources.list.d/mssql-server.list > /dev/null
sudo apt update
建立自动化备份策略(如每日增量备份+每周完整备份),并将备份文件存储在安全位置(如异地存储或云存储)。
使用top、htop等工具监控系统资源使用情况,或通过SQL Server自带的性能监视器(Performance Monitor)跟踪关键指标(如CPU、内存、磁盘I/O)。
及时安装Microsoft发布的安全更新,可通过sudo apt update && sudo apt upgrade -y自动获取并安装安全补丁。
记录升级过程中的关键步骤(如版本变更、备份时间、配置修改),便于后续排查问题或重复操作。