Compartir a través de


Visualización de información del espacio ocupado por los datos y el registro de una base de datos

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Base de datos SQL de Microsoft Fabric

En este artículo se describe cómo mostrar los datos y la información del espacio de registro de una base de datos en SQL Server mediante SQL Server Management Studio o Transact-SQL.

Antes de empezar

El permiso para ejecutar sp_spaceused se otorga al rol public. Solo los miembros del rol fijo de base de datos db_owner pueden especificar el parámetro @updateusage .

Uso de SQL Server Management Studio

Visualización de información del espacio ocupado por los datos y el registro de una base de datos

  1. En Explorador de objetos, conéctese a una instancia de SQL Server y expándala.

  2. Expanda Bases de datos.

  3. Haga clic con el botón derecho en una base de datos, seleccione Informes e Informes estándary, luego, seleccione Uso de disco.

Uso de Transact-SQL

Para mostrar la información del espacio ocupado por los datos y el registro de una base de datos mediante sp_spaceused

  1. Conéctese con el Motor de base de datos.

  2. En la barra de herramientas Estándar, seleccione Nueva consulta.

  3. Pegue el ejemplo siguiente en la ventana de consulta y haga clic en Ejecutar. En este ejemplo se usa el procedimiento almacenado del sistema sp_spaceused para notificar información del espacio en disco para toda la base de datos, incluidas tablas e índices.

    USE AdventureWorks2022;  
    GO  
    EXEC sp_spaceused;  
    GO  
    

Mostrar el espacio de datos empleado por el objeto y la unidad de asignación relativa a una base de datos

  1. Conéctese con el Motor de base de datos.

  2. En la barra de herramientas Estándar, seleccione Nueva consulta.

  3. Pegue el ejemplo siguiente en la ventana de consulta y haga clic en Ejecutar. Este ejemplo consulta las vistas del catálogo de objetos para notificar el uso del espacio en disco por tabla y dentro de cada tabla por cada unidad de asignación.

    SELECT
      t.object_id,
      OBJECT_NAME(t.object_id) ObjectName,
      sum(u.total_pages) * 8 Total_Reserved_kb,
      sum(u.used_pages) * 8 Used_Space_kb,
      u.type_desc,
      max(p.rows) RowsCount
    FROM
      sys.allocation_units u
      JOIN sys.partitions p on u.container_id = p.hobt_id
      JOIN sys.tables t on p.object_id = t.object_id
    GROUP BY
      t.object_id,
      OBJECT_NAME(t.object_id),
      u.type_desc
    ORDER BY
      Used_Space_kb desc,
      ObjectName;
    
    

Para mostrar la información del espacio ocupado por los datos y el registro de una base de datos mediante una consulta a sys.database_files

  1. Conéctese con el Motor de base de datos.

  2. En la barra de herramientas Estándar, seleccione Nueva consulta.

  3. Pegue el ejemplo siguiente en la ventana de consulta y seleccione Ejecutar. En este ejemplo se consulta la vista de catálogo sys.database_files para devolver información específica sobre los archivos de datos y de registro de la base de datos AdventureWorks2022 .

    USE AdventureWorks2022;  
    GO  
    SELECT file_id, name, type_desc, physical_name, size, max_size  
    FROM sys.database_files;  
    GO