在CentOS环境下监控SQL Server可采用以下方式:
一、系统自带工具
- SQL Server Management Studio (SSMS):连接实例后,通过“性能监视器”“活动监视器”查看实时指标,或用动态管理视图(DMVs)如
sys.dm_exec_requests
查询性能数据。
- SQL Server Profiler/Extended Events:记录SQL语句执行、锁等待等事件,分析性能瓶颈。
- 命令行工具:
sqlcmd
:执行SQL查询(如SELECT @@VERSION
获取版本信息)。
top/htop
:查看SQL Server进程的CPU/内存占用。
vmstat
:监控虚拟内存、磁盘I/O等系统资源。
二、第三方监控工具
- Zabbix/Prometheus+Grafana:支持自定义监控项,可采集CPU、内存、磁盘等指标,结合Grafana可视化。
- Nagios:通过插件(如
check_sqlserver
)监控服务状态,异常时发送告警。
- Lepus:专为数据库设计的开源监控平台,支持SQL Server基本监控。
三、日志与告警
- 查看SQL Server错误日志(路径:
/var/opt/mssql/log/errorlog
),分析异常信息。
- 在Zabbix/Prometheus中配置阈值告警,如CPU使用率超过80%时触发通知。
四、性能优化工具
- Query Store(SQL Server 2016+):记录查询执行历史,辅助分析慢查询。
- DMVs:如
sys.dm_db_index_physical_stats
监控索引状态,sys.dm_os_wait_stats
分析等待事件。
根据需求选择工具,轻量级监控可使用系统命令或Zabbix,复杂场景推荐Prometheus+Grafana或SQL Server原生工具组合。