Dienstag, 6. September 2011

MS SQL Server: Tabelle mit Logfile-Größe und Füllgrad für alle DBs erstellen

USE master
IF EXISTS (SELECT 1 FROM Tempdb..Sysobjects WHERE [Id] = OBJECT_ID('Tempdb..#LogSizeStats'))
BEGIN
DROP TABLE #LogSizeStats
END

CREATE TABLE #LogSizeStats
(DBName VARCHAR(255) NOT NULL PRIMARY KEY CLUSTERED,
DBId INT,
LogFileSizeMB REAL,
LogFileSizeUsePercent REAL,
Status BIT)

INSERT INTO #LogSizeStats (DBName,LogFileSizeMB,LogFileSizeUsePercent,[Status])
EXEC ('DBCC SQLPERF(LOGSPACE) WITH NO_INFOMSGS')

select DBName,LogFileSizeMB, (LogFileSizeMB*LogFileSizeUsePercent/100) as LogFileSizeUseMB, LogFileSizeUsePercent from #LogSizeStats

IF EXISTS (SELECT 1 FROM Tempdb..Sysobjects WHERE [Id] = OBJECT_ID('Tempdb..#LogSizeStats'))
BEGIN
DROP TABLE #LogSizeStats
END

Keine Kommentare: