Hi Guys,
I have inherited a database on SQL 2012 standard edition. It's size has been increasing and we are trying to find out the reason. The total mdf file size is 126 GB, and the free space is almost eaten up so it might increase again. I've tried identifying index fragmentation and rebuilding the fragmented indexes but that only frees up space around 2 GB, and then it starts utilizing that free space very quickly as well.
I have tried the following script to know the total object size, but total size according to this script is just 88 GB. Can anyone please help in finding out what might be causing the database to grow?
select sum(TotalSpaceGB) from (SELECT
s.Name AS SchemaName,
t.NAME AS TableName,
p.rows AS RowCounts,
(SUM(a.total_pages) * 8)/1024/1024 AS TotalSpaceGB,
(SUM(a.used_pages) * 8)/1024/1024 AS UsedSpaceGB,
((SUM(a.total_pages) - SUM(a.used_pages)) * 8)/1024/1024 AS UnusedSpaceGB
FROM
sys.tables t
INNER JOIN
sys.schemas s ON s.schema_id = t.schema_id
INNER JOIN
sys.indexes i ON t.OBJECT_ID = i.object_id
INNER JOIN
sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
INNER JOIN
sys.allocation_units a ON p.partition_id = a.container_id
/* WHERE
t.NAME NOT LIKE 'dt%' -- filter out system tables for diagramming
AND t.is_ms_shipped = 0
AND i.OBJECT_ID > 255 */
GROUP BY
t.Name, s.Name, p.Rows) a