블로그 이미지
bedbmsguru

Notice

Recent Post

Recent Comment

Recent Trackback

Archive

calendar

1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
  • total
  • today
  • yesterday
2023. 9. 11. 08:59 SQL SERVER

create procedure usp_get_ldf_size
AS 
SET NOCOUNT ON;
SELECT name
,db.log_reuse_wait_desc
,format(ls.cntr_value / 1024, '#,###') AS size_mb
,lu.cntr_value / 1024 AS used_mb
,format(CAST(lu.cntr_value AS FLOAT) / CAST(ls.cntr_value AS FLOAT) * 100, '###0.##') AS used_percent
,CASE 
WHEN CAST(lu.cntr_value AS FLOAT) / CAST(ls.cntr_value AS FLOAT) > .5
THEN CASE 
/* tempdb special monitoring */
WHEN db.name = 'tempdb'
AND log_reuse_wait_desc NOT IN (
'CHECKPOINT'
,'NOTHING'
)
THEN 'WARNING'
/* all other databases, monitor foor the 50% fill case */
WHEN db.name <> 'tempdb'
THEN 'WARNING'
ELSE 'OK'
END
ELSE 'OK'
END AS log_status
FROM sys.databases db
JOIN sys.dm_os_performance_counters lu ON db.name = lu.instance_name
JOIN sys.dm_os_performance_counters ls ON db.name = ls.instance_name
WHERE lu.counter_name LIKE 'Log File(s) Used Size (KB)%'
AND ls.counter_name LIKE 'Log File(s) Size (KB)%'
ORDER BY name

'SQL SERVER' 카테고리의 다른 글

파티션 함수 소스 생성  (0) 2024.02.03
실행중인 SQL확인  (0) 2023.09.11
Agent Job 실패확인  (0) 2023.09.11
synonym의 base object 조회  (0) 2022.12.15
전체Table Size 확인  (0) 2022.11.08
posted by bedbmsguru