Conjunto de backup (Transact-SQL)

Aplica-se a:SQL ServerAzure SQL Managed InstanceAnalytics Platform System (PDW)

Contém uma linha para cada conjunto de cópias de segurança. Um conjunto de backup contém o backup de uma única operação de backup bem-sucedida. RESTORE, RESTORERESTORE FILELISTONLY, RESTORERESTORE HEADERONLY, e RESTORERESTORE VERIFYONLY as instruções operam num único conjunto de backup dentro do conjunto de media no dispositivo ou dispositivos de backup especificados.

Esta tabela está armazenada na msdb base de dados.

Nome da coluna Tipo de dados Descrição
backup_set_id int Número único de identificação do conjunto de reserva que identifica o conjunto de reserva. Identidade, chave primária.
backup_set_uuid uniqueidentifier Número único de identificação do conjunto de reserva que identifica o conjunto de reserva.
media_set_id int Número único de identificação do conjunto de media que identifica o conjunto de media que contém o conjunto de backup. Referências backupmediaset(media_set_id).
first_family_number tinyint Número de família do meio onde começa o conjunto de reserva. Pode ser NULL.
first_media_number smallint Número de media do meio onde começa o conjunto de backup. Pode ser NULL.
last_family_number tinyint Número de família do suporte onde termina o conjunto de backup. Pode ser NULL.
last_media_number smallint Número de media do suporte onde termina o conjunto de backup. Pode ser NULL.
catalog_family_number tinyint Número de família do meio que contém o início do diretório do conjunto de backup. Pode ser NULL.
catalog_media_number smallint Número do media que contém o início do diretório do conjunto de backup. Pode ser NULL.
posição int Posição do conjunto de backup usada na operação de restauro para localizar o conjunto de backup e ficheiros adequados. Pode ser NULL. Para mais informações, consulte FILE inBACKUP (Transact-SQL).
expiration_date datetime Data e hora em que o conjunto de backup expira. Pode ser NULL.
software_vendor_id int Número de identificação do fornecedor de software que está a escrever o cabeçalho do suporte de backup. Pode ser NULL.
name nvarchar(128) Nome do conjunto de backup. Pode ser NULL.
description nvarchar(255) Descrição do conjunto de reserva. Pode ser NULL.
user_name nvarchar(128) Nome do utilizador que realiza a operação de backup. Pode ser NULL.
software_major_version tinyint Número principal de versão do Microsoft SQL Server. Pode ser NULL.
software_minor_version tinyint Número de versão menor do SQL Server. Pode ser NULL.
software_build_version smallint Número de compilação do SQL Server. Pode ser NULL.
time_zone smallint Diferença entre a hora local (onde decorre a operação de backup) e a Hora Universal Coordenada (UTC) em intervalos de 15 minutos, usando a informação do fuso horário no início da operação de backup. Os valores podem ser -48 até +48, inclusive. Um valor de 127 indica desconhecido. Por exemplo, -20 é a Hora Padrão do Leste (EST) ou cinco horas depois do UTC. Pode ser NULL.
mtf_minor_version tinyint Número de versão menor do Microsoft Tape Format. Pode ser NULL.
first_lsn numérico(25,0) Número de sequência de logarítmic do primeiro ou mais antigo registo de registo do conjunto de backup. Pode ser NULL.
last_lsn numérico(25,0) Número de sequência logarítmica do registo log seguinte após o conjunto de backup. Pode ser NULL.
checkpoint_lsn numérico(25,0) Número de sequência logarítmica do registo de logarítmic onde deve começar a refazer. Pode ser NULL.
database_backup_lsn numérico(25,0) Número de seqüência de log do backup completo de banco de dados mais recente. Pode ser NULL.

database_backup_lsn é o "início do ponto de controlo" que é ativado quando o backup começa. Esta LSN coincidirá com first_lsn se a cópia de segurança for feita quando a base de dados está inativa e não há replicação configurada.
database_creation_date datetime Data e hora em que a base de dados foi originalmente criada. Pode ser NULL.
backup_start_date datetime Data e hora do início da operação de backup. Pode ser NULL.
backup_finish_date datetime Data e hora do término da operação de backup. Pode ser NULL.
type char(1) Tipo de backup. Pode ser:

D = Base de Dados
I = Base de dados diferencial
L = Logarítmica
F = Ficheiro ou grupo de ficheiros
G = Ficheiro diferencial
P = Parcial
Q = Parcial diferencial

Pode ser NULL.
sort_order smallint Ordem de ordenação do servidor que realiza a operação de backup. Pode ser NULL. Para mais informações sobre ordens de ordenação e colações, veja Collation and Unicode Support.
code_page smallint Página de código do servidor que realiza a operação de backup. Pode ser NULL. Para mais informações sobre páginas de código, consulte Collation e Suporte Unicode.
compatibility_level tinyint Definição do nível de compatibilidade para a base de dados. Pode ser:

90 = SQL Server 2005 (9.x)
100 = SQL Server 2008 (10.0.x)
110 = SQL Server 2012 (11.x)
120 = SQL Server 2014 (12.x)
130 = SQL Server 2016 (13.x)
140 = SQL Server 2017 (14.x)
150 = SQL Server 2019 (15.x)
160 = SQL Server 2022 (16.x)

Pode ser NULL.

Para mais informações sobre níveis de compatibilidade, consulte ALTER DATABASE Nível de Compatibilidade (Transact-SQL).
database_version int Número da versão da base de dados. Pode ser NULL.
backup_size numérico(20,0) Tamanho do conjunto de backup, em bytes. Pode ser NULL. Para backups VSS, backup_size é um valor estimado.
database_name nvarchar(128) Nome do banco de dados envolvido na operação de backup. Pode ser NULL.
server_name nvarchar(128) Nome do servidor que executa a operação de backup do SQL Server. Pode ser NULL.
machine_name nvarchar(128) Nome do computador que executa o SQL Server. Pode ser NULL.
flags int No SQL Server, a coluna de flags foi descontinuada e está a ser substituída pelas seguintes colunas de bits:

has_bulk_logged_data
is_snapshot
is_readonly
is_single_user
has_backup_checksums
is_damaged
begins_log_chain
has_incomplete_metadata
is_force_offline
is_copy_only

Pode ser NULL.

Em conjuntos de backup de versões anteriores do SQL Server, os bits de bandeira:
1 = O backup contém dados minimamente registados.
2 = COM SNAPSHOT foi usado.
4 = A base de dados era apenas leitura no momento da cópia de segurança.
8 = A base de dados estava em modo de utilizador único no momento da cópia de segurança.
unicode_locale int Localização Unicode. Pode ser NULL.
unicode_compare_style int Comparar o estilo Unicode. Pode ser NULL.
collation_name nvarchar(128) Nome do agrupamento. Pode ser NULL.
Is_password_protected bit É o conjunto de backup

Protegido por palavra-passe:

0 = Não protegido

1 = Protegido
recovery_model nvarchar(60) Modelo de recuperação para a base de dados:

COMPLETO

BULK-LOGGED

SIMPLE
has_bulk_logged_data bit 1 = O backup contém dados registados em massa.
is_snapshot bit 1 = O backup foi feito usando a opção SNAPSHOT.
is_readonly bit 1 = A base de dados era apenas leitura no momento da cópia de segurança.
is_single_user bit 1 = A base de dados era de utilizador único no momento da cópia de segurança.
has_backup_checksums bit 1 = Backup contém somas de verificação de backup.
is_damaged bit 1 = Danos na base de dados foram detetados quando este backup foi criado. A operação de apoio foi solicitada para continuar apesar dos erros.
begins_log_chain bit 1 = Este é o primeiro de uma cadeia contínua de backups de log. Uma cadeia de registos começa com o primeiro backup de registo feito após a criação da base de dados ou quando esta é transferida do modelo simples para o modelo de recuperação completo ou em bloco.
has_incomplete_metadata bit 1 = Uma cópia de segurança do tail log com metadados incompletos. Para obter mais informações, consulte Tail-Log backups (SQL Server).
is_force_offline bit 1 = A base de dados foi desligada usando a opção NORECOVERY quando a cópia de segurança foi feita.
is_copy_only bit 1 = Uma cópia de segurança apenas para cópia. Para mais informações, consulte Copy-Only Backups (SQL Server).
first_recovery_fork_guid uniqueidentifier ID do fork de recuperação inicial. Isto corresponde ao FirstRecoveryForkID de RESTORE HEADERONLY.

Para backups de dados, first_recovery_fork_guid é igual a last_recovery_fork_guid.
last_recovery_fork_guid uniqueidentifier ID do fork de recuperação final. Isto corresponde ao RecoveryForkID de RESTORE HEADERONLY.

Para backups de dados, first_recovery_fork_guid é igual a last_recovery_fork_guid.
fork_point_lsn numérico(25,0) Se first_recovery_fork_guid não for igual a last_recovery_fork_guid, este é o número de sequência logarítmica do ponto de bifurcação. Caso contrário, o valor é NULO.
database_guid uniqueidentifier ID único para a base de dados. Isto corresponde ao BindingID de RESTORE HEADERONLY. Quando a base de dados é restaurada, é atribuído um novo valor.
family_guid uniqueidentifier ID único da base de dados original na criação. Este valor mantém-se igual quando a base de dados é restaurada, mesmo com um nome diferente.
differential_base_lsn numérico(25,0) LSN base para backups diferenciais. Para um backup diferencial baseado em uma única base; alterações com LSNs maiores ou iguais a differential_base_lsn estão incluídas no backup diferencial.

Para um diferencial multibase, o valor é NULL, e o LSN base deve ser determinado ao nível do ficheiro (ver backup file (Transact-SQL)).

Para tipos de backup não diferenciais, o valor é sempre NULL.
differential_base_guid uniqueidentifier Para um backup diferencial baseado em um único critério, o valor é o identificador único da base diferencial.

Para diferenciais multibase, o valor é NULL, e a base diferencial deve ser determinada ao nível do ficheiro.

Para tipos de backup não diferenciais, o valor é NULL.
compressed_backup_size Numeric(20,0) Total de bytes do backup armazenado no disco.

Para calcular a taxa de compressão, use compressed_backup_size e backup_size.

Durante uma msdb atualização, este valor é definido como NULL. o que indica uma cópia de segurança não comprimida.
key_algorithm nvarchar(32) O algoritmo de encriptação usado para encriptar o backup. NO_Encryption valor indicava que a cópia de segurança não estava encriptada.
encryptor_thumbprint varbinary(20) A impressão digital do encriptador que pode ser usada para encontrar o certificado ou a chave assimétrica na base de dados. No caso de o backup não ter sido encriptado, este valor é NULL.
encryptor_type nvarchar(32) O tipo de encriptador utilizado: Certificado ou Chave Assimétrica. No caso de o backup não ter sido encriptado, este valor é NULL.
last_valid_restore_time datetime O carimbo temporal do último registo do registo de registo de transações incluído na cópia de segurança do registo de transações, para registos que transportam um carimbo temporal. Ajuda na construção de planos de restauro ao ajudá-lo a encontrar o último backup do log para restaurar quando a STOPAT cláusula for especificada na RESTORE LOG declaração. Esse backup de log tem o last_valid_restore_time estritamente superior ao tempo especificado na STOPAT cláusula. Introduzido no SQL Server 2022 (16.x).
compression_algorithm nvarchar(32) O algoritmo de compressão usado ao criar o backup do SQL Server. Introduzido no SQL Server 2022 (16.x). A predefinição é MS_XPRESS. Para mais informações, consulte BACKUP COMPRESSÃO e Aceleração e descarga integradas.

Remarks

Examples

Histórico de consultas de backup

A consulta seguinte retorna informações de backup bem-sucedidas dos últimos dois meses.

SELECT bs.database_name,
    backuptype = CASE 
        WHEN bs.type = 'D' AND bs.is_copy_only = 0 THEN 'Full Database'
        WHEN bs.type = 'D' AND bs.is_copy_only = 1 THEN 'Full Copy-Only Database'
        WHEN bs.type = 'I' THEN 'Differential database backup'
        WHEN bs.type = 'L' THEN 'Transaction Log'
        WHEN bs.type = 'F' THEN 'File or filegroup'
        WHEN bs.type = 'G' THEN 'Differential file'
        WHEN bs.type = 'P' THEN 'Partial'
        WHEN bs.type = 'Q' THEN 'Differential partial'
        END + ' Backup',
    CASE bf.device_type
        WHEN 2 THEN 'Disk'
        WHEN 5 THEN 'Tape'
        WHEN 7 THEN 'Virtual device'
        WHEN 9 THEN 'Azure Storage'
        WHEN 105 THEN 'A permanent backup device'
        ELSE 'Other Device'
        END AS DeviceType,
    bms.software_name AS backup_software,
    bs.recovery_model,
    bs.compatibility_level,
    BackupStartDate = bs.Backup_Start_Date,
    BackupFinishDate = bs.Backup_Finish_Date,
    LatestBackupLocation = bf.physical_device_name,
    backup_size_mb = CONVERT(DECIMAL(10, 2), bs.backup_size / 1024. / 1024.),
    compressed_backup_size_mb = CONVERT(DECIMAL(10, 2), bs.compressed_backup_size / 1024. / 1024.),
    database_backup_lsn, -- For tlog and differential backups, this is the checkpoint_lsn of the FULL backup it is based on.
    checkpoint_lsn,
    begins_log_chain,
    bms.is_password_protected
FROM msdb.dbo.backupset bs
LEFT JOIN msdb.dbo.backupmediafamily bf
    ON bs.[media_set_id] = bf.[media_set_id]
INNER JOIN msdb.dbo.backupmediaset bms
    ON bs.[media_set_id] = bms.[media_set_id]
WHERE bs.backup_start_date > DATEADD(MONTH, - 2, sysdatetime()) --only look at last two months
ORDER BY bs.database_name ASC,
    bs.Backup_Start_Date DESC;

Passos seguintes