Este tema describe cómo consultar el espacio de almacenamiento de las bases de datos y las tablas en una instancia RDS SQL Server.
Consultar el espacio de la instancia
En la página de detalles de la instancia, consulte el espacio de almacenamiento total y utilizado en la sección basic information.
En la sección usage statistics, consulte el espacio de almacenamiento total y utilizado.
Consultar el tamaño de la base de datos
Conéctese a la instancia con un cliente SSMS. Para obtener más información, consulte Connect to an SQL Server instance.
-
Para consultar el uso de espacio de una sola base de datos, ejecute el siguiente comando SQL:
USE <database_name>; GO EXEC sp_spaceused @updateusage = N'TRUE';Parámetro
Descripción
database_size
Tamaño total de la base de datos, incluidos los archivos de datos y de registro.
unallocated space
Espacio no asignado en la base de datos.
reserved
Espacio total asignado.
data
Espacio que utilizan los datos.
index_size
Espacio que utilizan los índices.
unused
Espacio asignado pero sin usar.
-
Para consultar el uso de espacio de todas las bases de datos, ejecute el siguiente comando SQL:
USE master GO DECLARE @insSize TABLE(dbName sysname,checkTime VARCHAR(19),dbSize VARCHAR(50),logSize VARCHAR(50)) INSERT INTO @insSize ( dbName, checkTime, dbSize, logSize ) EXEC sp_msforeachdb 'select ''?'' dbName,CONVERT(VARCHAR(19),GETDATE(),120) checkTime,LTRIM(STR(SUM(CASE WHEN RIGHT(FILENAME,3)<>''ldf'' THEN convert (dec (15,2),size) * 8 / 1024 ELSE 0 END),15,2)+'' MB'') dbSize, LTRIM(STR(SUM(CASE WHEN RIGHT(FILENAME,3)=''ldf'' THEN convert (dec (15,2),size) * 8 / 1024 ELSE 0 END),15,2)+'' MB'') logSize from ?.dbo.sysfiles' SELECT * FROM @insSize ORDER BY CONVERT(DECIMAL,LTRIM(RTRIM(SUBSTRING(dbSize,1,LEN(dbSize)-2)))) DESCA continuación se muestra un ejemplo del resultado:
dbName checkTime dbSize logSize master 2024-01-01 12:00:00 5.00 MB 1.50 MB tempdb 2024-01-01 12:00:00 8.00 MB 0.50 MB model 2024-01-01 12:00:00 3.25 MB 0.75 MBSi necesita información más detallada sobre el uso del registro de transacciones, como el porcentaje de espacio utilizado, ejecute el siguiente comando SQL:
DBCC SQLPERF(LOGSPACE);El conjunto de resultados devuelve las siguientes columnas: Database Name, Log Size (MB), Log Space Used (%) y Status.
Consultar el tamaño de las tablas en una base de datos
Conéctese a la instancia con un cliente SSMS. Para obtener más información, consulte Connect to an SQL Server instance.
-
Para consultar el tamaño de una sola tabla dentro de una base de datos, ejecute el siguiente comando SQL:
USE <database_name>; GO EXEC sp_spaceused N'<table_name>';A continuación se muestra un ejemplo del resultado:
name rows reserved data index_size unused zhtdb 10000 328 KB 304 KB 16 KB 8 KB -
Para consultar el tamaño de todas las tablas de una base de datos, ejecute el siguiente comando SQL:
USE <database_name>; GO DECLARE @tabSize TABLE ( name NVARCHAR(100), rows CHAR(20), reserved VARCHAR(18), data VARCHAR(18), index_size VARCHAR(18), unused VARCHAR(18) ); INSERT INTO @tabSize EXEC sp_MSForEachTable ' EXEC sp_spaceused ''?'''; SELECT * FROM @tabSize ORDER BY CONVERT(INT, REPLACE([data], 'KB', '')) DESC, 2 DESC;A continuación se muestra un ejemplo del resultado:
name rows reserved data index_size unused zhtdb 10000 328 KB 304 KB 16 KB 8 KB