Freigeben über


Anzeigen von Informationen zum Daten- und Protokollspeicherplatz für eine Datenbank

Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) SQL-Datenbank in Microsoft Fabric

Dieser Artikel beschreibt, wie Sie mithilfe von SQL Server Management Studio order Transact-SQL Informationen zum Daten- und Protokollspeicherplatz einer Datenbank in SQL Server anzeigen.

Voraussetzungen

Die Berechtigung zum Ausführen von sp_spaceused wird der Rolle public gewährt. Nur Mitglieder der festen Datenbankrolle db_owner können den Parameter @updateusage angeben.

Verwenden von SQL Server Management Studio

Anzeigen von Informationen zum Daten- und Protokollspeicherplatz für eine Datenbank

  1. Stellen Sie im Objekt-Explorereine Verbindung mit einer Instanz von SQL Server her, und erweitern Sie dann diese Instanz.

  2. Erweitern Sie Datenbanken.

  3. Klicken Sie mit der rechten Maustaste auf eine Datenbank, zeigen Sie auf Berichte, zeigen Sie auf Standardberichte, und wählen Sie dann die Option Datenträgerauslastung aus.

Verwenden von Transact-SQL

Zeigen Sie Informationen zum Daten- und Protokollspeicherplatz einer Datenbank mit sp_spaceused an

  1. Stellen Sie eine Verbindung mit dem Datenbank-Engineher.

  2. Klicken Sie in der Standardsymbolleiste auf Neue Abfrage.

  3. Fügen Sie das folgende Beispiel in das Abfragefenster ein, und klicken Sie dann auf Ausführen. In diesem Beispiel wird die gespeicherte Systemprozedur sp_spaceused verwendet, um Informationen zum Datenträgerspeicherplatz für die gesamte Datenbank, einschließlich Tabellen und Indizes zu melden.

    USE AdventureWorks2022;  
    GO  
    EXEC sp_spaceused;  
    GO  
    

Anzeigen des vom Objekt und der Zuordnungseinheit genutzten Datenspeichers für eine Datenbank

  1. Stellen Sie eine Verbindung mit dem Datenbank-Engineher.

  2. Klicken Sie in der Standardsymbolleiste auf Neue Abfrage.

  3. Fügen Sie das folgende Beispiel in das Abfragefenster ein, und klicken Sie dann auf Ausführen. In diesem Beispiel werden Katalogsichten für Objekte abgefragt, um die Auslastung des Speicherplatzes auf dem Datenträger pro Tabelle und innerhalb jeder Tabelle pro Zuordnungseinheit zu melden.

    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;
    
    

Zeigen Sie Daten und Protokollspeicherplatzinformationen für eine Datenbank durch das Abfragen von sys.database_files an

  1. Stellen Sie eine Verbindung mit dem Datenbank-Engineher.

  2. Klicken Sie in der Standardsymbolleiste auf Neue Abfrage.

  3. Fügen Sie das folgende Beispiel in das Abfragefenster ein, und klicken Sie dann auf Ausführen. In diesem Beispiel wird die Katalogsicht sys.database_files abgefragt, um bestimmte Informationen zu den Daten- und Protokolldateien in der AdventureWorks2022 -Datenbank zurückzugeben.

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