Xin chào,
SQL Server DBA nên giám sát cơ sở dữ liệu và các truy vấn đang chạy mọi lúc.
Để giám sát các truy vấn đang chạy là rất quan trọng đối với các tiêu chí điều chỉnh hiệu suất. Bởi vì nếu bất kỳ truy vấn nào đang chạy trong thời gian dài thì bạn có thể cảnh báo chủ sở hữu ứng dụng hoặc khách hàng. Và bạn có thể hỏi bản thân và khách hàng tại sao truy vấn này chạy trong thời gian dài, nó có bình thường hay không?
Bạn có thể giám sát các truy vấn đang chạy trong SQL Server bằng tập lệnh sau.
select text, SUBSTRING(st.text, (qs.statement_start_offset/2)+1, ((CASE qs.statement_end_offset WHEN -1 THEN DATALENGTH(st.text) ELSE qs.statement_end_offset END - qs.statement_start_offset)/2) + 1) AS statement_text, * from sys.dm_exec_requests qs cross apply sys.dm_exec_sql_text(sql_handle) st cross apply sys.dm_exec_query_plan(plan_handle);