Mục lục
Banner for article "SQL Server Monitoring Tools: What to Track and How to Choose", bearing article title, TSplus Server Monitoring logo and website, TSplus tagline and an illustration (stack of servers).

Công cụ giám sát SQL Server có thể theo dõi mọi thứ từ hoạt động CPU và đĩa Windows đến chặn, thống kê thời gian chờ, kế hoạch truy vấn và khả năng sẵn sàng của cơ sở dữ liệu. Do đó, công cụ phù hợp phụ thuộc vào lớp SQL Server mà bạn thực sự cần quan sát, chứ không phải vào kích thước của danh sách tính năng của nó.

Hướng dẫn này phân tích những gì các nhóm CNTT nên giám sát, nơi giám sát máy chủ Windows dừng lại và giám sát cụ thể SQL bắt đầu, các công cụ Microsoft tích hợp sẵn nào có sẵn, và cách chọn một phương pháp giám sát phù hợp.

Những gì làm cho việc giám sát SQL Server trở nên nổi bật?

Giám sát máy chủ, cơ bản:

Microsoft SQL Server chạy trên hạ tầng máy chủ, vì vậy hiệu suất hệ điều hành quan trọng Sử dụng CPU cao, áp lực bộ nhớ hoặc lưu trữ chậm có thể ảnh hưởng đến SQL Server ngay cả khi không có gì sai với động cơ cơ sở dữ liệu.

Nhu cầu giám sát cụ thể cho cơ sở dữ liệu đối với máy chủ SQL:

Tuy nhiên, việc nhìn thấy các chỉ số Windows Server rõ ràng không nhất thiết có nghĩa là hiệu suất SQL Server tốt. Người dùng có thể gặp phải các giao dịch chậm do bị chặn, kế hoạch thực thi kém hoặc thời gian chờ truy vấn trong khi máy chủ cơ sở vẫn có vẻ khỏe mạnh.

Cách Microsoft phân chia điều này:

Microsoft phản ánh sự phân biệt này trong kiến trúc giám sát của chính mình. Các công cụ Windows như Performance Monitor bao phủ tài nguyên hệ thống, trong khi SQL Server cung cấp các tiện ích cụ thể cho cơ sở dữ liệu bao gồm Query Store, Extended Events, Activity Monitor, nhật ký lỗi và khả năng giám sát Transact-SQL.

Giám sát SQL Server do đó nên bao gồm nhiều lớp bổ sung thay vì chỉ một tập hợp các chỉ số.

Các công cụ giám sát SQL Server nên theo dõi điều gì?

Các chỉ số chính xác cần thiết phụ thuộc vào việc các nhóm CNTT có chịu trách nhiệm chủ yếu về tính khả dụng của hạ tầng, quản trị cơ sở dữ liệu hay hiệu suất ứng dụng hay không. Một chiến lược giám sát hữu ích bắt đầu từ cái nhìn tổng quát và thêm khả năng hiển thị SQL Server sâu hơn khi khối lượng công việc yêu cầu.

1. Sức khỏe máy chủ và hạ tầng

Bắt đầu với các tài nguyên có sẵn cho máy chủ SQL Server. CPU, bộ nhớ vật lý, dung lượng đĩa, hoạt động đọc và ghi đĩa, mức sử dụng mạng và các tiến trình đang chạy cung cấp bối cảnh hạ tầng cho hiệu suất cơ sở dữ liệu.

Điều quan trọng là mối tương quan. Thời gian phản hồi SQL cao kèm theo độ trễ lưu trữ gợi ý một cuộc điều tra khác với các truy vấn chậm xảy ra trong khi máy chủ có đủ CPU, bộ nhớ và khả năng I/O.

Giám sát máy chủ cũng giúp phát hiện các vấn đề ảnh hưởng đến nhiều hơn cả SQL Server. Một máy chủ vật lý hoặc ảo có thể lưu trữ các ứng dụng, dịch vụ hoặc người dùng từ xa hỗ trợ mà hoạt động của họ cạnh tranh cho cùng một tài nguyên.

2. Tình trạng của Instance và Cơ sở dữ liệu SQL Server

Lớp tiếp theo nhìn vào chính động cơ cơ sở dữ liệu.

Các lĩnh vực quan trọng thường bao gồm thời gian chờ, phiên hoạt động, chặn, deadlock, sự phát triển của tệp cơ sở dữ liệu, việc sử dụng nhật ký giao dịch và hoạt động TempDB. Các quản trị viên cũng có thể cần theo dõi trạng thái cơ sở dữ liệu, kết nối, hành vi bộ nhớ và các dịch vụ SQL Server.

Thống kê chờ đợi đặc biệt hữu ích vì chúng giúp xác định các tác vụ SQL Server đang chờ đợi cái gì thay vì chỉ cho thấy rằng hệ thống đang chậm. Việc chặn và deadlock cung cấp thêm khả năng hiển thị giúp xác định xem các giao dịch cụ thể có cạnh tranh cho tài nguyên hay không.

Các nền tảng giám sát cơ sở dữ liệu chuyên dụng do đó đi sâu hơn nhiều so với các công cụ giám sát máy chủ. Ví dụ, IDERA SQL Diagnostic Manager ghi lại việc giám sát cho các tình trạng chờ, chuỗi chặn, deadlock, áp lực TempDB, độ trễ I/O và sự phát triển của cơ sở dữ liệu.

3. Hiệu suất truy vấn và khối lượng công việc

Khi một vấn đề đã được xác định với khối lượng công việc của cơ sở dữ liệu, các chỉ số máy chủ tổng hợp thường không đủ. Các quản trị viên cần xác định các truy vấn nào tiêu tốn tài nguyên quá mức và liệu hành vi của chúng có thay đổi hay không.

Thông tin hữu ích ở cấp độ truy vấn có thể bao gồm thời gian thực thi, mức tiêu thụ CPU, số lần đọc logic và vật lý, mức tiêu thụ bộ nhớ, tần suất thực thi, thời gian chờ và kế hoạch thực thi.

Microsoft Query Store là một ví dụ tốt về phần mềm được tùy chỉnh cho điều này. Nó giữ lại các truy vấn, kế hoạch và thống kê thời gian chạy để các quản trị viên có thể xem xét hiệu suất theo thời gian và xác định các suy giảm liên quan đến thay đổi kế hoạch truy vấn. SQL Server 2017 và các phiên bản sau có thể ghi lại thống kê chờ thông qua Query Store.

Bối cảnh lịch sử này quan trọng vì nhiều vấn đề với SQL Server là tạm thời. Biết rằng CPU đã đạt 90% vào chiều qua là hữu ích. Biết được các truy vấn nào đã thay đổi hành vi vào cùng một thời điểm xác định các yếu tố tiềm năng để hành động.

4. Sự sẵn có, Công việc và Sức khỏe hoạt động

Hiệu suất chỉ là một khía cạnh của việc giám sát SQL Server. Các sự cố vận hành có thể ảnh hưởng đến khả năng sẵn sàng và khả năng phục hồi ngay cả khi hiệu suất khối lượng công việc có vẻ bình thường.

Tùy thuộc vào môi trường, các quản trị viên có thể cần có cái nhìn về các công việc của SQL Server Agent, sao lưu, khả năng sẵn có của cơ sở dữ liệu và các Nhóm Sẵn Có Always On. Các tài sản lớn hơn hoặc quan trọng đối với doanh nghiệp cũng có thể yêu cầu giám sát sao chép, theo dõi cấu hình và dự báo công suất.

Độ sâu cần thiết phải tuân theo tầm quan trọng của khối lượng công việc. Một cơ sở dữ liệu nội bộ nhỏ hoặc một hệ thống SQL Server sản xuất cụm yêu cầu các kiến trúc giám sát rất khác nhau.

Công cụ giám sát SQL Server tích hợp sẵn nào bạn có thể sử dụng?

Trước khi mua một nền tảng chuyên dụng, điều đáng để hiểu là gì Microsoft SQL Server đã cung cấp.

Một bộ công cụ gốc đa dạng:

  • Activity Monitor hỗ trợ kiểm tra theo yêu cầu
  • Query Store giữ thông tin lịch sử truy vấn và kế hoạch.
  • Sự kiện mở rộng ghi lại các sự kiện động cơ đã chọn
  • Các chế độ xem quản lý động tiết lộ dữ liệu hiệu suất nội bộ
  • Nhật ký lỗi SQL Server giúp điều tra các sự kiện của động cơ cơ sở dữ liệu.
  • Windows Performance Monitor thêm thông tin tài nguyên hệ điều hành.

Chẩn đoán sâu hơn nhưng phức tạp hơn:

Những công cụ này có thể cung cấp độ sâu chẩn đoán đáng kể, đặc biệt là cho các quản trị viên cơ sở dữ liệu có kinh nghiệm. Chúng cũng tránh việc giới thiệu một cái khác. nền tảng giám sát khi việc khắc phục sự cố thỉnh thoảng là đủ.

Hạn chế của họ thường không phải là truy cập vào dữ liệu mà là sự thuận tiện trong hoạt động. Một đội ngũ CNTT quản lý nhiều máy chủ có thể muốn các bảng điều khiển tập trung, lịch sử liên tục, cảnh báo dễ dàng hơn và sự tương quan nhanh chóng thay vì phải tập hợp thông tin từ nhiều giao diện SQL Server và Windows.

Đó là nơi giám sát của bên thứ ba trở nên hấp dẫn hơn.

Cách chọn công cụ giám sát SQL Server?

Bắt đầu với vấn đề mà công cụ này dự kiến giải quyết. Điều này sẽ giúp bạn không bị mất mục tiêu trong danh sách kiểm tra của số lượng lớn các chỉ số được hỗ trợ.

1. Độ sâu cần thiết của khả năng nhìn thấy

Một câu hỏi đầu tiên hữu ích là liệu bạn có cần giám sát hạ tầng, chẩn đoán động cơ cơ sở dữ liệu hay phân tích truy vấn chi tiết không.

Yêu cầu Cách tiếp cận giám sát
CPU, bộ nhớ, đĩa và khả dụng của máy chủ Giám sát máy chủ hoặc hạ tầng
Khắc phục sự cố SQL Server thỉnh thoảng Công cụ Microsoft SQL Server tích hợp sẵn
Chặn, chờ, deadlock và cảnh báo cơ sở dữ liệu Giám sát SQL Server chuyên dụng
Kế hoạch truy vấn và suy giảm hiệu suất Cửa hàng truy vấn hoặc giám sát SQL nâng cao
Tài sản SQL đa thể lớn Giám sát cơ sở dữ liệu tập trung
SQL Server cộng với các phụ thuộc ứng dụng rộng hơn Hạ tầng hoặc khả năng quan sát toàn bộ kết hợp với giám sát cụ thể SQL

Các danh mục này có thể chồng chéo lên nhau. Trong nhiều môi trường, cách tiếp cận thực tiễn nhất là sự kết hợp thay vì một sản phẩm đơn lẻ.

2. Khớp thông báo và lịch sử với các hoạt động

Giám sát trở nên hữu ích nhất khi nó làm nổi bật hành vi bất thường trước khi người dùng báo cáo vấn đề.

Xem liệu một công cụ có hỗ trợ cảnh báo ngưỡng, xu hướng lịch sử và đủ ngữ cảnh để điều tra sự kiện sau đó hay không. Các nền tảng SQL chuyên biệt có thể đi xa hơn bằng cách đính kèm các chuỗi chặn, đồ thị deadlock hoặc thông tin truy vấn trực tiếp vào một cảnh báo. Redgate Monitor, chẳng hạn, ghi lại các cảnh báo cụ thể cho SQL cho các sự kiện bao gồm deadlock, công việc thất bại, truy vấn bị chặn và truy vấn chạy lâu.

Việc thiết lập các tiêu chuẩn cơ bản cũng rất quan trọng. Một giá trị không bình thường đối với một cơ sở dữ liệu có thể là điều thường lệ đối với một cơ sở dữ liệu khác, vì vậy các cảnh báo nên phản ánh hành vi và tầm quan trọng kinh doanh của từng khối lượng công việc.

3. Xem xét quy mô, triển khai và quản trị

Một công cụ phù hợp cho một phiên bản SQL Server có thể trở nên cồng kềnh khi sử dụng trên hàng chục máy chủ.

Xem xét số lượng máy chủ, phiên bản và cơ sở dữ liệu cần giám sát, cách dữ liệu giám sát được thu thập và lưu trữ, và cách dễ dàng mà các quản trị viên có thể so sánh các hệ thống từ một bảng điều khiển trung tâm. Do đó, việc cấp phép, nỗ lực triển khai, tạo báo cáo và quản lý cảnh báo nên được đánh giá cùng với độ sâu kỹ thuật.

Mục tiêu không phải là thu thập mọi chỉ số có thể. Mục tiêu là thu thập thông tin liên quan nhất với số lượng đủ để xác định hành vi bất thường và rút ngắn con đường từ triệu chứng đến nguyên nhân để các kỹ thuật viên CNTT của bạn có thể khắc phục sự cố.

TSplus Server Monitoring phù hợp ở đâu?

TSplus Server Monitoring giải quyết khía cạnh hạ tầng của mô hình giám sát này. Nó cung cấp tính năng hiển thị thời gian thực vào CPU, bộ nhớ, hoạt động đọc và ghi đĩa, băng thông, quy trình và người dùng kết nối, cùng với các báo cáo lịch sử và cảnh báo có thể cấu hình cho các chỉ số máy chủ.

Đối với một máy chủ Windows chạy Microsoft SQL Server, khả năng hiển thị này sẽ giúp xác định xem một vấn đề hiệu suất cơ sở dữ liệu có trùng khớp với áp lực CPU, mức tiêu thụ bộ nhớ, hoạt động đĩa hoặc một điều kiện cấp máy chủ khác hay không. Báo cáo lịch sử cũng cung cấp bối cảnh cho các vấn đề hạ tầng tái diễn.

TSplus Server Monitoring không phải là một công cụ phân tích hiệu suất cơ sở dữ liệu SQL Server chuyên dụng. Các yêu cầu cụ thể về SQL như phân tích kế hoạch thực thi, điều tra Query Store, chuỗi chặn, phân tích deadlock hoặc thống kê chờ chi tiết cần các công cụ SQL Server của Microsoft hoặc một sản phẩm giám sát cơ sở dữ liệu chuyên biệt.

Đối với nhiều đội ngũ CNTT, các lớp này bổ sung cho nhau. TSplus Server Monitoring có thể cung cấp cái nhìn rõ ràng về tình trạng máy chủ và mức tiêu thụ tài nguyên, trong khi công cụ gốc của SQL Server cung cấp khả năng hiển thị cơ sở dữ liệu sâu hơn và giúp xác định khi một sự cố chỉ ra hướng về động cơ cơ sở dữ liệu hoặc một khối lượng công việc riêng lẻ.

Kết luận

Lựa chọn giữa các công cụ giám sát SQL Server bắt đầu bằng việc quyết định những gì cần được nhìn thấy. Tài nguyên máy chủ, tình trạng động cơ cơ sở dữ liệu và hiệu suất truy vấn đại diện cho các lớp khác nhau của cùng một hệ thống, và không có chỉ số đơn lẻ nào giải thích tất cả chúng.

Bắt đầu với sức khỏe hạ tầng, sau đó thêm giám sát cụ thể cho SQL bất cứ khi nào khối lượng công việc yêu cầu chẩn đoán sâu hơn. Cách tiếp cận theo lớp này giữ cho việc giám sát thực tiễn trong khi cung cấp cho các nhóm CNTT bối cảnh đủ để phân biệt vấn đề của máy chủ với vấn đề của cơ sở dữ liệu hoặc truy vấn.

Bản dùng thử miễn phí của TSplus Remote Access

Giải pháp thay thế Citrix/RDS tối ưu cho truy cập desktop/ứng dụng. An toàn, tiết kiệm chi phí, tại chỗ/cloud

Một số câu hỏi thường gặp

Công cụ giám sát SQL Server là gì?

Một công cụ giám sát SQL Server theo dõi sức khỏe, hiệu suất hoặc khả năng sẵn có của các môi trường Microsoft SQL Server. Tùy thuộc vào phạm vi của nó, nó có thể giám sát tài nguyên máy chủ, cơ sở dữ liệu, thời gian chờ, chặn, truy vấn, công việc, sao lưu hoặc cấu hình khả năng sẵn có.

Các chỉ số SQL Server nào tôi nên theo dõi?

Các chỉ số cốt lõi phụ thuộc vào khối lượng công việc thường bao gồm CPU, bộ nhớ và lưu trữ. Bên cạnh đó, các chỉ số cụ thể của SQL cho thấy các yếu tố như thời gian chờ, chặn, deadlock, sự phát triển của cơ sở dữ liệu, nhật ký giao dịch, hoạt động TempDB, thời gian truy vấn và trạng thái công việc.

Có thể giám sát Windows Server phát hiện các vấn đề của SQL Server không?

Giám sát Windows Server có thể xác định các vấn đề hạ tầng ảnh hưởng đến SQL Server, bao gồm áp lực CPU, bộ nhớ và đĩa. Nó không thể tự mình giải thích các vấn đề của động cơ cơ sở dữ liệu như sự suy giảm kế hoạch truy vấn, chuỗi chặn hoặc thời gian chờ cụ thể của SQL.

SQL Server có bao gồm các công cụ giám sát riêng của nó không?

Có. Microsoft SQL Server bao gồm các công cụ và tiện ích như Query Store, Extended Events, Activity Monitor, Dynamic Management Views, nhật ký lỗi và các hàm hiệu suất Transact-SQL. Sự phù hợp của chúng phụ thuộc vào sự kiện hoặc khối lượng công việc đang được điều tra.

Tôi có cần phần mềm giám sát SQL Server chuyên dụng không?

Không nhất thiết. Các công cụ tích hợp sẵn có thể đủ cho các môi trường nhỏ hoặc khắc phục sự cố thỉnh thoảng. Kết hợp với TSplus Server Monitoring Đối với các mục đích chung, công cụ giám sát tích hợp sẵn của SQL Server của Microsoft không có gì để ghen tị với các sản phẩm giám sát của bên thứ ba. Việc giám sát chuyên dụng trở nên hữu ích hơn khi các nhóm cần khả năng hiển thị tập trung, cảnh báo liên tục, lịch sử lâu dài hoặc chẩn đoán nhanh hơn trên nhiều phiên bản SQL Server.

Đọc thêm

back to top of the page icon