Ubuntu下SQL Server的更新和维护怎么做
导读:Ubuntu下 SQL Server 的更新与维护实操指南 一 更新与升级流程 备份与变更窗口 对所有关键数据库执行完整备份,并保留可用的差异与日志备份;在业务低峰期执行,准备回滚方案。 系统与仓库准备 更新系统包索引并升级系统组...
Ubuntu下 SQL Server 的更新与维护实操指南
一 更新与升级流程
- 备份与变更窗口
- 对所有关键数据库执行完整备份,并保留可用的差异与日志备份;在业务低峰期执行,准备回滚方案。
- 系统与仓库准备
- 更新系统包索引并升级系统组件:
sudo apt update & & sudo apt upgrade -y - 导入 Microsoft GPG 密钥:
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc - 注册对应版本的 SQL Server 仓库(示例为 Ubuntu 20.04):
- SQL Server 2022:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2022.list)" - SQL Server 2019:
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"
- SQL Server 2022:
- 更新系统包索引并升级系统组件:
- 执行更新
- 标准更新(同版本累积更新/补丁):
sudo apt-get update & & sudo apt-get install -y mssql-server - 跨版本升级(如 2019 → 2022):先确保已切换到目标版本的仓库,再执行:
sudo apt-get update & & sudo apt-get install -y mssql-server
- 标准更新(同版本累积更新/补丁):
- 重启与验证
- 重启服务:
sudo systemctl restart mssql-server - 验证运行状态:
systemctl status mssql-server --no-pager - 验证版本与补丁级别(示例):
sqlcmd -S localhost -E -Q "SELECT @@VERSION, SERVERPROPERTY('ProductLevel')"。
- 重启服务:
二 日常维护要点
- 备份策略
- 定期执行完整备份,并按业务 RPO/RTO 配置差异与日志备份;可用 SSMS 或 sqlcmd 执行,例如:
sqlcmd -S localhost -E -Q "BACKUP DATABASE [YourDB] TO DISK = N'/var/opt/mssql/backup/YourDB.bak' WITH INIT, COMPRESSION"。
- 定期执行完整备份,并按业务 RPO/RTO 配置差异与日志备份;可用 SSMS 或 sqlcmd 执行,例如:
- 作业与代理
- 启用 SQL Server 代理:
sudo /opt/mssql/bin/mssql-conf set sqlagent.enabled true & & sudo systemctl restart mssql-server
- 启用 SQL Server 代理:
- 统计信息与空间
- 更新统计信息:
UPDATE STATISTICS [Schema].[Table]; - 监控数据/日志文件所在磁盘空间,必要时扩容或清理。
- 更新统计信息:
- 安全与访问控制
- 定期更换 SA 密码,限制远程连接,仅放通必要来源 IP;在防火墙放通 1433/TCP:
sudo ufw allow 1433 & & sudo ufw enable
- 定期更换 SA 密码,限制远程连接,仅放通必要来源 IP;在防火墙放通 1433/TCP:
- 配置与目录
- 调整内存、进程数等参数:
sudo /opt/mssql/bin/mssql-conf set < property> < value> - 迁移默认数据/日志目录(示例):
- 创建目录并赋权:
sudo mkdir -p /home/d/mssql/data & & sudo chown mssql:mssql /home/d/mssql/data - 配置默认目录:
sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /home/d/mssql/data,重启生效。
- 创建目录并赋权:
- 调整内存、进程数等参数:
三 常见问题与排障
- 服务管理
- 启动/停止/重启:
sudo systemctl start|stop|restart mssql-server - 查看状态:
systemctl status mssql-server --no-pager
- 启动/停止/重启:
- 依赖缺失
- 常见缺失库:
libldap-2.4-2、libssl1.1(按需安装对应版本)
- 常见缺失库:
- 连接与端口
- 无法远程连接时,确认防火墙已放行 1433/TCP,并确保客户端指向正确的主机与端口。
四 实践建议
- 变更前务必完成全量备份与回滚预案,并在测试环境验证;更新后第一时间进行版本与补丁级别校验。
- 为关键库配置自动化备份作业(完整+差异+日志),并定期演练恢复流程以验证可用性。
- 将 SQL Server 代理用于日常维护任务(备份、统计信息更新、索引维护等),减少人工操作风险。
- 关注系统与 SQL Server 的安全补丁周期,及时应用;对升级操作先在非生产环境验证兼容性。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu下SQL Server的更新和维护怎么做
本文地址: https://pptw.com/jishu/777378.html
