Datafiles :
1 2 3 4 5 6 7 8 9 |
use tempdb go SELECT RTRIM( name ) AS [Segment Name ], groupid AS [ Group Id], filename AS [File Name ], CAST ( size /128.0 AS DECIMAL (10,2)) AS [ Size in MB], CAST (FILEPROPERTY( name , 'SpaceUsed' )/128.0 AS DECIMAL (10,2)) AS [ Space Used], CAST ( size /128.0-(FILEPROPERTY( name , 'SpaceUsed' )/128.0) AS DECIMAL (10,2)) AS [Available Space ], CAST (( CAST (FILEPROPERTY( name , 'SpaceUsed' )/128.0 AS DECIMAL (10,2))/ CAST ( size /128.0 AS DECIMAL (10,2)))*100 AS DECIMAL (10,2)) AS [Percent Used] FROM sysfiles ORDER BY groupid DESC |
or
1 2 3 4 |
use tempdb go sp_helpfile go |
Backup & Recovery
Backup history :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
SELECT CONVERT(CHAR(100), SERVERPROPERTY( 'Servername' )) AS Server, msdb.dbo.backupset.database_name, msdb.dbo.backupset.backup_start_date, msdb.dbo.backupset.backup_finish_date, msdb.dbo.backupset.expiration_date, CASE msdb..backupset. type WHEN 'D' THEN 'Database' WHEN 'L' THEN 'Log' END AS backup_type, msdb.dbo.backupset.backup_size, msdb.dbo.backupmediafamily.logical_device_name, msdb.dbo.backupmediafamily.physical_device_name, msdb.dbo.backupset.name AS backupset_name, msdb.dbo.backupset.description FROM msdb.dbo.backupmediafamily INNER JOIN msdb.dbo.backupset ON msdb.dbo.backupmediafamily.media_set_id = msdb.dbo.backupset.media_set_id WHERE (CONVERT(datetime, msdb.dbo.backupset.backup_start_date, 102) >= GETDATE() - 7) ORDER BY msdb.dbo.backupset.database_name, msdb.dbo.backupset.backup_finish_date DESC; |
Generate script for other databases
1 2 3 4 5 |
select 'use [' + name + '] SCRIPT HERE GO ' from sys.databases where name not in (' master ', ' msdb ', ' tempdb ', ' model') and state = 0 |
Index Fragmentation
1 2 3 4 5 6 7 8 9 10 11 12 13 |
SELECT dbschemas.[name] as 'Schema' , dbtables.[name] as 'Table' , dbindexes.[name] as 'Index' , indexstats.alloc_unit_type_desc, indexstats.avg_fragmentation_in_percent, indexstats.page_count FROM sys.dm_db_index_physical_stats (DB_ID(), NULL, NULL, NULL, NULL) AS indexstats INNER JOIN sys.tables dbtables on dbtables.[object_id] = indexstats.[object_id] INNER JOIN sys.schemas dbschemas on dbtables.[schema_id] = dbschemas.[schema_id] INNER JOIN sys.indexes AS dbindexes ON dbindexes.[object_id] = indexstats.[object_id] AND indexstats.index_id = dbindexes.index_id WHERE indexstats.database_id = DB_ID() ORDER BY indexstats.avg_fragmentation_in_percent desc |