1. 使用SQL Server自帶工具監控
SQL Server提供了內置工具,可直接在CentOS上通過命令行或連接工具使用:
sqlcmd -S your_server_name -U your_username -P your_password
連接實例后,可運行查詢(如SELECT @@SERVERNAME AS ServerName, @@VERSION AS Version
)獲取服務器信息,或通過sys.dm_exec_requests
(查看當前執行請求)、sys.dm_os_performance_counters
(查看性能計數器)等動態管理視圖(DMV)監控性能。sql_statement_completed
、deadlock
),收集低開銷的性能數據,用于分析查詢性能或故障排查。2. 使用第三方監控工具
第三方工具提供更全面的可視化與告警功能,適合生產環境:
prometheus-mssql-exporter
(SQL Server導出器)收集SQL Server指標(如CPU使用率、內存占用、查詢執行時間),配置Prometheus(scrape_configs
中添加SQL Server目標)拉取數據,再通過Grafana創建儀表盤(如“SQL Server Overview”“Query Performance”),實現實時監控與可視化。nagios-plugins-all
安裝SQL Server插件(如check_sqlserver
)。配置Nagios(編輯nagios.cfg
添加監控命令),可監控SQL Server可用性、連接數、查詢響應時間等指標,觸發告警(郵件、短信)通知管理員。zabbix_agentd.conf
添加SQL Server監控項),前端界面可創建“SQL Server CPU Usage”“Disk I/O”等監控項,支持告警與趨勢分析。3. 使用CentOS系統工具輔助監控
CentOS自帶工具可監控SQL Server進程的資源占用情況:
top -p $(pgrep -f mssql-server)
(pgrep
查找SQL Server進程ID)可查看SQL Server進程的CPU、內存使用率;htop
(需安裝)提供更直觀的交互式界面。vmstat 1
(每秒刷新)查看系統虛擬內存、進程、CPU使用情況;iostat -x 1
查看磁盤I/O統計(如讀寫速率、等待時間);sar -u 1
(來自sysstat
包)查看CPU利用率歷史數據,輔助分析SQL Server性能瓶頸。4. 查看SQL Server日志
SQL Server錯誤日志與Windows事件查看器(需通過SSH反向隧道或遠程桌面訪問Windows系統)包含關鍵故障信息:
/var/opt/mssql/log/errorlog
(默認位置),通過tail -f /var/opt/mssql/log/errorlog
實時查看錯誤信息(如連接失敗、死鎖、磁盤空間不足)。