2010-01-14 3 views
0

데이터베이스를 마우스 오른쪽 단추로 클릭하면 보고서 ... 디스크 사용, 보고서가 표시됩니다. 제한된 권한을 가지고 있기 때문에 "Transaction Log Space Usage"를 보여주는 맨 위 부분 만 얻습니다. 그 번호만으로도 유용 할 수 있습니다.SSMS는 트랜잭션 로그 사용을 어떻게 얻습니까?

그러나 나중에 DBCC showfilestats를 실행할 수있는 권한이 없다는 오류 메시지가 표시되며 sys.dm_os_performance_counters 또는 DBCC SQLPERF ('logspace')에 액세스 할 수 없습니다.

제가 그 최고 수를 얻을 수 있다면 유용 할 것입니다. 불행하게도, 나는 물론, 프로파일 러를 실행할 수 없습니다, 그래서 난 내 자신의 SSMS 디스크 사용 보고서의

답변

1

프로파일 캡처 DBCC SQLPERF(LOGSPACE) 보여줍니다 ... 어떤 명령 아무 생각하거나 심지어 데이터를 가져 오기 위해 발행하는 것 조회 :

exec sp_executesql @stmt=N'begin try 
declare @tran_log_space_usage table( 
     database_name sysname 
,  log_size_mb float 
,  log_space_used float 
,  status int 
); 

insert into @tran_log_space_usage 
exec(''DBCC SQLPERF (LOGSPACE)'') ; 

select 1 as l1 
,  1 as l2 
,  log_size_mb as LogSizeMB 
,  cast(convert(float,log_space_used) as decimal(10,1)) as SpaceUsage 
,  ''Used'' as UsageType 
from @tran_log_space_usage 
where database_name = DB_NAME() 
UNION 
select 1 as l1 
,  1 as l2 
,  log_size_mb 
,  cast(convert(float,(100-log_space_used)) as decimal(10,1)) as SpaceUsage 
,  ''Unused'' as UsageType 
from @tran_log_space_usage 
where database_name = DB_NAME(); 
end try 
begin catch 
select -100 as l1 
,  ERROR_NUMBER() as l2 
,  ERROR_SEVERITY() as LogSizeMB 
,  ERROR_STATE() as SpaceUsage 
,  ERROR_MESSAGE() as UsageType 
end catch',@params=N'' 
+0

감사합니다. 어떻게 든 승격 된 권한을 받아야합니다. –

관련 문제