温馨提示×

CentOS中SQL Server故障排查指南

小樊
49
2025-09-14 03:11:34
栏目: 云计算

以下是CentOS中SQL Server故障排查指南:

  1. 检查服务状态

    sudo systemctl status mssql-server # 查看服务是否运行  sudo systemctl start mssql-server # 启动服务(若未运行)  
  2. 查看日志文件

    • 错误日志路径:/var/log/mssql/errorlog,分析错误信息定位问题。
    • 使用 journalctl -u mssql-server 查看系统日志。
  3. 验证网络与端口

    • 测试网络连通性:ping <服务器IP>
    • 检查端口监听:telnet <服务器IP> 1433(默认端口),确保防火墙放行:
      sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent sudo firewall-cmd --reload 
  4. 检查权限与配置

    • 确保SQL Server相关目录权限正确:/var/opt/mssql 属主为 mssql:mssql
    • 配置文件 /etc/mssql/mssql.conf.d/90-sqlservr.conf 检查 listen_addresses 是否为 0.0.0.0
  5. 处理数据库问题

    • 若数据库损坏,以单用户模式启动并修复:
      sudo /opt/mssql/bin/sqlservr -m # 单用户模式  sqlcmd -S localhost -U SA -Q "DBCC CHECKDB ('数据库名') REPAIR_ALLOW_DATA_LOSS" ```(注意:`REPAIR_ALLOW_DATA_LOSS` 可能导致数据丢失,需提前备份) 
  6. 监控系统资源

    • 使用 topfree -mdf -h 检查CPU、内存、磁盘空间是否充足。
  7. 客户端工具验证

    • 安装ODBC驱动及工具(如 msodbcsqlsqlcmd),测试连接:
      sqlcmd -S localhost -U SA -P '密码' 
  8. 其他高级排查

    • 检查SELinux状态:getenforce,若为 Enforcing 可临时设为 Permissive 模式。
    • 使用SSMS或第三方工具(如ELK Stack)分析日志及性能数据。

提示:操作前建议备份重要数据,若问题无法解决可参考微软官方文档或社区论坛。

0