Condividi tramite


sys.dm_database_backups

Si applica a: database SQL di Azuredatabase SQL in Microsoft Fabric

Restituisce informazioni sui backup di un database in un server logico database SQL di Azure e nel database SQL in Microsoft Fabric.

Nome colonna Tipo di dati Descrizione
backup_file_id uniqueidentifier ID del file di backup generato. Non Null.
logical_database_id uniqueidentifier ID database logico in cui viene eseguita l'operazione. Non Null.
physical_database_name nvarchar(128) Nome del database fisico in cui viene eseguita l'operazione. Non Null.
logical_server_name nvarchar(128) Nome del server logico in cui è presente il database di cui viene eseguito il backup. Nel database SQL in Fabric si tratta di NULL.
logical_database_name nvarchar(128) Nome creato dall'utente del database in cui viene eseguita l'operazione. Non Null.
backup_start_date datetime2(7) Timestamp all'avvio dell'operazione di backup. Non Null.
backup_finish_date datetime2(7) Timestamp al termine dell'operazione di backup. Non Null.
backup_type char(1) Tipo di backup. Non Null.

D = Backup completo del database
I = Backup incrementale o differenziale
L = Backup del log.
in_retention bit Stato di conservazione dei backup. Indica se il backup rientra nel periodo di conservazione.

1 = Nella conservazione
0 = Conservazione esaurita.

Autorizzazioni

In database SQL di Azure, negli obiettivi di servizio Basic, S0 e S1 e per i database nei pool elastici, nell'account amministratore del server, nell'account amministratore dell'ID di Microsoft Entra o nell'appartenenza al ruolo del server ##MS_ServerStateReader## è necessario. Per tutti gli altri obiettivi del servizio database SQL, è necessaria l'autorizzazione VIEW DATABASE STATE per il database o l'appartenenza al ruolo del server ##MS_ServerStateReader### .

Nel database SQL di Infrastruttura è necessario concedere a un utente VIEW DATABASE STATE nel database per eseguire query su questa DMV. In alternativa, un membro di qualsiasi ruolo dell'area di lavoro infrastruttura può eseguire query su questa DMV.

Osservazioni:

I backup conservati e visualizzati nella visualizzazione cronologia di backup dipendono dalla conservazione dei backup configurata. Alcuni backup precedenti al periodo di conservazione (in_retention = 0) vengono visualizzati anche nella sys.dm_database_backups visualizzazione. Sono necessari per eseguire il ripristino temporizzato all'interno della conservazione configurata.

Poiché il livello di servizio Hyperscale si basa sugli snapshot per i backup, l'esecuzione di questa DMV nel livello di servizio Hyperscale non restituisce risultati.

Esempio

Mostra l'elenco di tutti i backup attivi per il database corrente ordinato in base alla data di fine del backup.

SELECT *
FROM sys.dm_database_backups
ORDER BY backup_finish_date DESC;

Per ottenere un elenco descrittivo dei backup per un database, eseguire:

SELECT backup_file_id, 
    backup_start_date,
    backup_finish_date,
    CASE backup_type
        WHEN 'D' THEN 'Full'
        WHEN 'I' THEN 'Differential'
        WHEN 'L' THEN 'Transaction log'
        END AS BackupType,
    CASE in_retention
        WHEN 1 THEN 'In retention'
        WHEN 0 THEN 'Out of retention'
        END AS IsBackupAvailable
FROM sys.dm_database_backups
ORDER BY backup_start_date DESC;