TSF – Giải pháp IT toàn diện cho doanh nghiệp SMB | HCM

P21 - Triển Khai Giám sát SQL Server 2022 bằng PRTG

PRTG P21 – Cách Giám sát SQL Server 2022 với PRTG (Setup & SQL Service Sensors)

Trong môi trường production, SQL Server là một trong những thành phần hạ tầng quan trọng nhất. Nếu dịch vụ SQL ngừng hoạt động, toàn bộ hệ thống phụ thuộc như ERP, phần mềm nội bộ hay Snipe-IT sẽ dừng ngay lập tức.

Trong bài viết này, bạn sẽ được hướng dẫn chi tiết cách Giám sát SQL Server 2022 với PRTG, bao gồm:

  • Tạo tài khoản monitoring chuyên dụng

  • Cấp quyền tối thiểu cần thiết

  • Theo dõi trạng thái SQL Service bằng SSH Script Advanced

  • Giám sát SQL Server Agent

  • Cấu hình ngưỡng cảnh báo phù hợp

Mục tiêu là phát hiện sự cố trước khi người dùng phản ánh hệ thống bị lỗi.


🛠 Step 1 – Tạo User Giám Sát SQL Server

Chúng ta sẽ tạo một tài khoản riêng dành cho việc monitoring với quyền tối thiểu.

Tạo User Admin để cấu hình ban đầu

SQL Server admin:

  • User: admin_sql

  • Pass: Abc@1234


Kiểm tra phiên bản SQL Server

 
 
sqlcmd -S localhost -U admin_sql -P ‘Abc@1234’ -C

SELECT @@VERSION;
GO
 

Tạo Login cho PRTG Monitoring

 
💻
filename.bash
sqlcmd -S localhost -U admin_sql -P 'Abc@1234' -C
USE master;
GO

CREATE LOGIN prtg_sql WITH PASSWORD = 'StrongPassword!';
GRANT VIEW SERVER STATE TO prtg_sql;
GRANT VIEW ANY DATABASE TO prtg_sql;
GO
Exit

Cấu hình này là đủ để:

• Đọc thông tin hiệu năng
• Không thể phá hủy database
• VIEW SERVER STATE → đủ quyền đọc trạng thái toàn bộ database

Tài khoản monitoring được thiết kế đảm bảo an toàn, không có quyền thay đổi dữ liệu.


🖥 Step 2 – Thêm Device vào PRTG và cấu hình Credential

Tiến hành add host SQL Server vào hệ thống PRTG.


Enable SSH

Đảm bảo SSH đã được bật trên máy chủ SQL Server (SQL chạy trên Linux).

PRTG sẽ sử dụng SSH Script Advanced để giám sát service.


Cấu hình SQL Credential trong PRTG

Trong phần Device Settings của PRTG:

  • User: prtg_sql

  • Pass: StrongPassword!

PRTG sẽ dùng tài khoản này để truy vấn trạng thái SQL Server.


📡 Step 3 – Thêm Sensor Giám Sát

Chúng ta bắt đầu cấu hình monitoring service.


🟢 #1 Giám sát SQL Service

👉 Sử dụng SSH Script Advanced

Theo dõi các service:

• MSSQLSERVER: mssql-server
• SQLSERVERAGENT (nếu sử dụng job/backup): mssql-server-agent


📌 Tại sao cần giám sát hai service này?

• SQL dừng → Snipe-IT crash
• SQL Agent dừng → job backup không chạy

Việc giám sát cả hai đảm bảo:

  • Database luôn sẵn sàng

  • Job backup hoạt động đúng lịch

  • Hệ thống vận hành ổn định


Lệnh kiểm tra trạng thái service

 
 
systemctl is-active mssql-server
systemctl is-active mssql-server-agent
 

🧩 Step 1 – Tạo Script Monitoring

Tạo thư mục chứa script:

 
 
sudo mkdir -p /var/prtg/scriptsxml
 

Tạo file script:

 
 
sudo nano /var/prtg/scriptsxml/check_mssql_services.sh
 

Nội dung Script

💻
filename.bash
#!/bin/bash

FAILED=0
FAILED_LIST=""

# Default values
SQL_STATUS=1
AGENT_STATUS=2   # 2 = not installed

# Check SQL Server
if systemctl list-unit-files | grep -q "^mssql-server"; then
  if systemctl is-active --quiet mssql-server; then
    SQL_STATUS=0
  else
    SQL_STATUS=1
    FAILED=$((FAILED+1))
    FAILED_LIST="$FAILED_LIST mssql-server"
  fi
else
  SQL_STATUS=2
fi

# Check SQL Server Agent
if systemctl list-unit-files | grep -q "^mssql-server-agent"; then
  if systemctl is-active --quiet mssql-server-agent; then
    AGENT_STATUS=0
  else
    AGENT_STATUS=1
    FAILED=$((FAILED+1))
    FAILED_LIST="$FAILED_LIST mssql-server-agent"
  fi
else
  AGENT_STATUS=2
fi

# Message
if [ "$FAILED" -eq 0 ]; then
  MSG="SQL services are running"
else
  MSG="Service down:$FAILED_LIST"
fi

cat <<EOF
<prtg>
  <result>
    <channel>SQL Server Service</channel>
    <value>$SQL_STATUS</value>
    <unit>Custom</unit>
    <valuelookup>prtg.standardlookups.yesno.stateyesok</valuelookup>
  </result>

  <result>
    <channel>SQL Server Agent</channel>
    <value>$AGENT_STATUS</value>
    <unit>Custom</unit>
    <valuelookup>prtg.standardlookups.yesno.stateyesok</valuelookup>
  </result>

  <text>$MSG</text>
</prtg>
EOF

exit 0

🔐 Phân quyền và kiểm tra Script

Cấp quyền thực thi:

 
 
sudo chmod +x /var/prtg/scriptsxml/check_mssql_services.sh
 

Chạy test thủ công:

 
 
sudo /var/prtg/scriptsxml/check_mssql_services.sh
 

🔍 Ý nghĩa các Channel

ChannelValueÝ nghĩa
SQL Server Service0OK
SQL Server Service1DOWN
SQL Server Agent0OK
SQL Server Agent1DOWN
SQL Server Agent2Agent không tồn tại

Cơ chế này giúp phát hiện chính xác lỗi mà không tạo cảnh báo giả.


🖥 Step 2 – Thêm Sensor trong PRTG

Thêm sensor mới:

  • Type: SSH Script Advanced

  • Script: check_mssql_services.sh

PRTG sẽ đọc XML output và tự động tạo channel.


🚨 Step 3 – Cấu hình ngưỡng cảnh báo

Nếu SQL Agent được sử dụng:

  • Đặt threshold cảnh báo khi giá trị > 0.5

Nếu không dùng SQL Agent và không cần giám sát:

  • Đặt threshold là 3

Cách cấu hình này tránh cảnh báo không cần thiết.


🎯 Vì sao mô hình Giám sát SQL Server này hiệu quả?

Khi triển khai Giám sát SQL Server, bạn cần đảm bảo:

  • Phát hiện SQL service dừng

  • Phát hiện Agent dừng

  • Ngăn rủi ro backup thất bại

  • Giảm downtime hệ thống

Giải pháp này mang lại:

  • Monitoring nhẹ, hiệu quả

  • Hiển thị rõ trạng thái service

  • Cảnh báo tức thì khi lỗi xảy ra

  • Phù hợp môi trường production

Thay vì theo dõi quá nhiều metric phức tạp, chúng ta tập trung vào yếu tố quan trọng nhất: trạng thái dịch vụ.


🚀 Kết luận

Để triển khai Giám sát SQL Server 2022 với PRTG đúng chuẩn, bạn cần:

  • Tài khoản monitoring an toàn

  • Quyền tối thiểu nhưng đủ dùng

  • SSH Script Advanced theo dõi service

  • Ngưỡng cảnh báo hợp lý

Với cấu hình này, hệ thống giám sát SQL Server của bạn sẽ:

  • An toàn

  • Chính xác

  • Ổn định

  • Sẵn sàng cho môi trường doanh nghiệp

Bạn đã có một giải pháp giám sát SQL Server chuyên nghiệp, giúp phát hiện sự cố trước khi ảnh hưởng đến toàn bộ hệ thống.

Tham khảo thêm bài viết cùng chủ đề

P3 – Giải Pháp Mạnh Mẽ Giám Sát IP WAN Với PRTG

P3 – Giải Pháp Mạnh Mẽ Giám Sát IP WAN Với PRTG PRTG – P3 Giám Sát Internet & WAN IP Với PRTG Network Monitor Việc theo dõi kết nối Internet là yếu tố sống còn trong hạ tầng doanh nghiệp. Khi đường truyền WAN gặp sự cố, các dịch...

Read More

P1 – Hướng Dẫn Cài Đặt PRTG Hoàn Chỉnh Windows 10

P1 – Hướng Dẫn Cài Đặt PRTG Hoàn Chỉnh Windows 10 🚀 Cài đặt PRTG trên Windows 10 – Initial Setup & Configuration (P1) Nếu bạn đang bắt đầu triển khai hệ thống giám sát hạ tầng, thì việc Cài đặt PRTG đúng cách là bước nền tảng cực kỳ...

Read More