首页主机资讯Ubuntu上SQL Server的日志如何管理

Ubuntu上SQL Server的日志如何管理

时间2025-11-18 21:11:04发布访客分类主机资讯浏览865
导读:Ubuntu上SQL Server日志管理 一 日志类型与存放位置 系统服务日志:由 systemd journal 管理,查看命令为:sudo journalctl -u mssql-server;按启动查看可用 -b -1 等参数。...

Ubuntu上SQL Server日志管理

一 日志类型与存放位置

  • 系统服务日志:由 systemd journal 管理,查看命令为:sudo journalctl -u mssql-server;按启动查看可用 -b -1 等参数。
  • SQL Server 错误日志:位于 /var/opt/mssql/log/errorlog,可用 tail -f 实时查看。
  • 数据库事务日志:每个用户数据库的日志文件为 .ldf,通常与数据文件同目录 /var/opt/mssql/data/,例如 YourDB.ldf。
  • 说明:SQL Server 在 Linux 上不提供 Linux 发行版常见的“通用查询日志”,如需审计建议使用 SQL Server 审计或扩展事件。

二 查看与实时监控

  • 实时查看服务日志:sudo journalctl -u mssql-server -f。
  • 查看错误日志:sudo tail -f /var/opt/mssql/log/errorlog;如需检索关键字可用 grep,例如:grep -i “error” /var/opt/mssql/log/errorlog。
  • 查看数据库事务日志内容(只读方式,不用于恢复):sudo tail -f /var/opt/mssql/data/YourDB.ldf。
  • 结构化分析工具:可安装并使用 lnav 对日志做高亮与过滤:sudo apt install lnav & & lnav /var/opt/mssql/log/errorlog。

三 事务日志的备份与截断

  • 恢复模式选择:
    • FULL:需定期做日志备份以实现日志截断与时间点恢复。
    • SIMPLE:检查点自动截断,适合测试/开发或对日志保留要求不高的场景。
  • 日志备份与截断(FULL 模式推荐):BACKUP LOG YourDB TO DISK = ‘/var/opt/mssql/backup/YourDB_Log.bak’; 备份成功后日志会被截断。
  • 收缩日志文件(谨慎使用):DBCC SHRINKFILE (N’YourDB_Log’, 1024); 将日志收缩到约 1GB,仅在空间紧张且确认无长事务时执行。
  • 重要提示:避免频繁或自动收缩;在生产环境保持 FULL 恢复模式并配置 SQL Server Agent 定时日志备份,是保障可恢复性与控制日志增长的最佳实践。

四 系统日志轮转与清理

  • 使用 logrotate 管理 SQL Server 相关日志(如 errorlog、output.log):
    1. 新建配置:sudo vim /etc/logrotate.d/mssql
    2. 示例策略(按日轮转、保留 7 天、压缩):
      /var/opt/mssql/log/*.log {
      daily
      rotate 7
      compress
      missingok
      copytruncate
      notifempty
      }
    3. 测试与强制执行:sudo logrotate -f /etc/logrotate.d/mssql
  • 说明:logrotate 通过系统的 cron.daily 定时运行,无需额外创建定时任务;copytruncate 可避免重启服务。

五 日常维护与最佳实践

  • 监控与告警:定期检查错误日志与磁盘空间(df -h);为关键错误配置监控或告警。
  • 备份策略:在 FULL 模式下,建立“每日完整备份 + 每 15–60 分钟日志备份”的计划,确保可恢复性与日志空间可控。
  • 变更控制:调整恢复模式、收缩、重建日志等操作应在维护窗口进行,并保留回滚方案。
  • 版本差异:部分旧语法(如 BACKUP LOG … WITH NO_LOG / WITH TRUNCATE_ONLY)在新版本中已弃用,请使用标准 BACKUP LOG 触发截断。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu上SQL Server的日志如何管理
本文地址: https://pptw.com/jishu/750528.html
如何查看ubuntu系统进程 Ubuntu上SQL Server如何备份

游客 回复需填写必要信息