Instruções RESTORE – VERIFYONLY (Transact-SQL)
Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure
Verifica o backup, mas não o restaura, e verifica se o conjunto de backup está completo e se todo o backup pode ser lido. Porém, RESTORE VERIFYONLY não tenta verificar a estrutura dos dados contida nos volumes de backup. No Microsoft SQL Server, RESTORE VERIFYONLY foi aprimorado para executar uma verificação adicional nos dados a fim de aumentar a probabilidade de detecção de erros. A meta é estar o mais próximo de uma operação de restauração real. Para obter mais informações, consulte Comentários.
Se o backup for válido, o Mecanismo de Banco de Dados do SQL Server retorna uma mensagem de sucesso.
Observação
Para obter as descrições dos argumentos, confira Argumentos de RESTORE (Transact-SQL).
Convenções de sintaxe de Transact-SQL
Sintaxe
RESTORE VERIFYONLY
FROM <backup_device> [ ,...n ]
[ WITH
{
LOADHISTORY
--Restore Operation Option
| MOVE 'logical_file_name_in_backup' TO 'operating_system_file_name'
[ ,...n ]
--Backup Set Options
| FILE = { backup_set_file_number | @backup_set_file_number }
| PASSWORD = { password | @password_variable }
--Media Set Options
| MEDIANAME = { media_name | @media_name_variable }
| MEDIAPASSWORD = { mediapassword | @mediapassword_variable }
--Error Management Options
| { CHECKSUM | NO_CHECKSUM }
| { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }
--Monitoring Options
| STATS [ = percentage ]
--Tape Options
| { REWIND | NOREWIND }
| { UNLOAD | NOUNLOAD }
} [ ,...n ]
]
[;]
<backup_device> ::=
{
{ logical_backup_device_name |
@logical_backup_device_name_var }
| { DISK | TAPE | URL } = { 'physical_backup_device_name' |
@physical_backup_device_name_var }
}
Observação
URL é o formato usado para especificar o local e o nome do arquivo para o Armazenamento de Blobs do Microsoft Azure e o suporte a ele começa no SQL Server 2012 (11.x) SP1 CU2. Embora o Armazenamento do Microsoft Azure seja um serviço, a implementação é semelhante ao disco e à fita para permitir uma experiência de restauração consistente e direta para todos os três dispositivos.
Argumentos
Para obter descrições dos argumentos de RESTORE VERIFYONLY, confira Argumentos de RESTORE (Transact-SQL).
Comentários gerais
O conjunto de mídias ou o conjunto de backup deve conter informações corretas mínimas para que possam ser interpretadas como formato de fita Microsoft. Caso contrário, RESTORE VERIFYONLY parará e indicará que o formato do backup é inválido.
As verificações executadas por RESTORE VERIFYONLY incluem:
Se o conjunto de backup está completo e todos os volumes são legíveis.
Alguns campos de cabeçalho de páginas de banco de dados, como ID da página (como se estivesse relacionado à gravação de dados).
Soma da verificação (se presente na mídia).
Verificação de espaço suficiente nos dispositivos de destino.
Observação
RESTORE VERIFYONLY não funciona em um instantâneo do banco de dados. Para verificar um instantâneo do banco de dados antes uma operação de reversão, você pode executar DBCC CHECKDB.
Observação
Com backups de instantâneo, RESTORE VERIFYONLY confirma a existência dos instantâneos nos locais especificados no arquivo de backup. Os backups de instantâneo são um novo recurso no SQL Server 2016 (13.x). Para obter mais informações sobre Backups de Instantâneo, consulte Backups de instantâneos de arquivos para arquivos de banco de dados no Azure.
Segurança
Uma operação de backup pode, opcionalmente, especificar senhas para um conjunto de mídias, um conjunto de backup ou ambos. Quando uma senha tiver sido definida em um conjunto de backup ou de mídias, será preciso especificar a senha ou as senhas corretas na instrução RESTORE. Essas senhas impedem operações de restauração não autorizadas e acréscimos não autorizados de conjuntos de backup à mídia usando ferramentas do SQL Server. Porém, uma senha não impede a substituição da mídia usando a opção FORMAT da instrução BACKUP.
Importante
A proteção fornecida por esta senha é fraca. Destina-se a evitar uma restauração incorreta com o uso de ferramentas do SQL Server por usuários autorizados ou não autorizados. Não impede a leitura dos dados de backup por outros meios ou a substituição da senha. Esse recurso será removido em uma versão futura do SQL Server. Evite usar esse recurso em um novo trabalho de desenvolvimento e planeje modificar aplicativos que atualmente usam esse recurso. A melhor prática para proteger backups é armazenar fitas de backup em um local seguro ou fazer backup de arquivos de disco protegidos por ACLs (listas de controle de acesso) adequadas. As ACLs devem ser definidas no diretório raiz em que os backups são criados.
Permissões
A partir do SQL Server 2008 (10.0.x), para obter informações sobre um conjunto ou um dispositivo de backup, é necessário ter a permissão CREATE DATABASE. Para obter mais informações, confira Permissões de Banco de Dados GRANT (Transact-SQL).
Exemplos
O exemplo a seguir verifica o backup do disco.
RESTORE VERIFYONLY FROM DISK = 'D:\AdventureWorks.bak';
GO
Consulte Também
BACKUP (Transact-SQL)
Conjuntos de mídias, famílias de mídia e conjuntos de backup (SQL Server)
RESTORE REWINDONLY (Transact-SQL)
RESTORE (Transact-SQL)
Informações de histórico e cabeçalho de backup (SQL Server)