Delen via


Gegevens en logboekruimtegegevens voor een database weergeven

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL-database in Microsoft Fabric

In dit artikel wordt beschreven hoe u de gegevens en logboekruimtegegevens voor een database in SQL Server kunt weergeven met behulp van SQL Server Management Studio of Transact-SQL.

Voordat u begint

Machtiging voor het uitvoeren van sp_spaceused wordt verleend aan de rol openbare. Alleen leden van de db_owner vaste databaserol kunnen de @updateusage parameter opgeven.

SQL Server Management Studio gebruiken

Gegevens en logboekruimtegegevens voor een database weergeven

  1. Maak in Objectverkenner verbinding met een exemplaar van SQL Server en vouw dat exemplaar vervolgens uit.

  2. Breid Databasesuit.

  3. Klik met de rechtermuisknop op een database, wijs rapportenaan, wijs standaardrapportenaan en selecteer schijfgebruik.

Gebruik Transact-SQL

Gegevens en logboekruimtegegevens voor een database weergeven met behulp van sp_spaceused

  1. Maak verbinding met de database-engine.

  2. Selecteer op de werkbalk Standaard Nieuwe query.

  3. Plak het volgende voorbeeld in het queryvenster en selecteer uitvoeren. In dit voorbeeld wordt de opgeslagen procedure van het sp_spaceused systeem gebruikt voor het rapporteren van schijfruimtegegevens voor de hele database, inclusief tabellen en indexen.

    USE AdventureWorks2022;  
    GO  
    EXEC sp_spaceused;  
    GO  
    

Gegevensruimte weergeven die wordt gebruikt door object- en toewijzingseenheid voor een database

  1. Maak verbinding met de database-engine.

  2. Selecteer op de Standaard werkbalk Nieuwe query.

  3. Plak het volgende voorbeeld in het queryvenster en selecteer uitvoeren. In dit voorbeeld worden objectcatalogusweergaven gebruikt om schijfruimtegebruik per tabel en binnen elke tabel per toewijzingseenheid te rapporteren.

    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;
    
    

Gegevens en logboekruimtegegevens voor een database weergeven door een query uit te voeren op sys.database_files

  1. Maak verbinding met de database-engine.

  2. Selecteer op de werkbalk Standaard Nieuwe query.

  3. Plak het volgende voorbeeld in het queryvenster en selecteer uitvoeren. In dit voorbeeld wordt een query uitgevoerd op de sys.database_files catalogusweergave om specifieke informatie te retourneren over de gegevens en logboekbestanden in de AdventureWorks2022-database.

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