Instruções RESTORE (Transact-SQL)RESTORE Statements (Transact-SQL)

Restaura backups do banco de dados SQL feitos usando o comando BACKUP.Restores SQL database backups taken using the BACKUP command.

Clique em uma das guias a seguir para ver sintaxe, argumentos, comentários, permissões e exemplos de uma versão específica do SQL com a qual você está trabalhando.Click one of the following tabs for the syntax, arguments, remarks, permissions, and examples for a particular SQL version with which you are working.

Para obter mais informações sobre as convenções de sintaxe, consulte Convenções de sintaxe Transact-SQL.For more information about the syntax conventions, see Transact-SQL Syntax Conventions.

Clique em um produto!Click a product!

Na linha a seguir, clique em qualquer nome de produto de seu interesse.In the following row, click whichever product name you are interested in. O clique exibe conteúdo diferente aqui, apropriado para qualquer produto no qual você clicar:The click displays different content here, appropriate for whichever product you click:

* SQL Server *  * SQL Server *   Instância gerenciada
do Banco de Dados SQL
SQL Database
managed instance
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

SQL ServerSQL Server

Esse comando permite executar os seguintes cenários de restauração:This command enables you to perform the following restore scenarios:

  • Restaurar um banco de dados inteiro de um backup de banco de dados completo (uma restauração completa).Restore an entire database from a full database backup (a complete restore).
  • Restaurar parte de um banco de dados (uma restauração parcial).Restore part of a database (a partial restore).
  • Restaurar arquivos ou grupos de arquivos específicos para um banco de dados (uma restauração de arquivo).Restore specific files or filegroups to a database (a file restore).
  • Restaurar páginas específicas para um banco de dados (uma restauração de página).Restore specific pages to a database (a page restore).
  • Restaurar um log de transações em um banco de dados (uma restauração de log de transações).Restore a transaction log onto a database (a transaction log restore).
  • Reverter um banco de dados ao momento determinado capturado por um instantâneo do banco de dados.Revert a database to the point in time captured by a database snapshot.

Para obter informações sobre os cenários de restauração do SQL ServerSQL Server, consulte Visão geral da restauração e recuperação.For more information about SQL ServerSQL Server restore scenarios, see Restore and Recovery Overview. Para obter mais informações sobre descrições dos argumentos, consulte Argumentos RESTORE.For more information about descriptions of the arguments, see RESTORE Arguments. Ao restaurar um banco de dados de outra instância, considere as informações descritas em Gerenciar metadados ao disponibilizar um banco de dados em outra instância do servidor (SQL Server).When restoring a database from another instance, consider the information from Manage Metadata When Making a Database Available on Another Server Instance (SQL Server).

Observação

Para obter mais informações sobre a restauração por meio do serviço de Armazenamento de Blobs do Microsoft Azure, consulte Backup e restauração do SQL Server com o serviço de Armazenamento de Blobs do Microsoft Azure.For more information about restoring from the Microsoft Azure Blob storage service, see SQL Server Backup and Restore with Microsoft Azure Blob Storage Service.

SintaxeSyntax

--To Restore an Entire Database from a Full database backup (a Complete Restore):
RESTORE DATABASE { database_name | @database_name_var }
 [ FROM <backup_device> [ ,...n ] ]
 [ WITH
   {
    [ RECOVERY | NORECOVERY | STANDBY =
        {standby_file_name | @standby_file_name_var }
       ]
   | ,  <general_WITH_options> [ ,...n ]
   | , <replication_WITH_option>
   | , <change_data_capture_WITH_option>
   | , <FILESTREAM_WITH_option>
   | , <service_broker_WITH options>
   | , \<point_in_time_WITH_options-RESTORE_DATABASE>
   } [ ,...n ]
 ]
[;]

--To perform the first step of the initial restore sequence of a piecemeal restore:
RESTORE DATABASE { database_name | @database_name_var }
   <files_or_filegroups> [ ,...n ]
 [ FROM <backup_device> [ ,...n ] ]
   WITH
      PARTIAL, NORECOVERY
      [  , <general_WITH_options> [ ,...n ]
       | , \<point_in_time_WITH_options-RESTORE_DATABASE>
      ] [ ,...n ]
[;]  

--To Restore Specific Files or Filegroups:
RESTORE DATABASE { database_name | @database_name_var }
   <file_or_filegroup> [ ,...n ]
 [ FROM <backup_device> [ ,...n ] ]
   WITH
   {
      [ RECOVERY | NORECOVERY ]
      [ , <general_WITH_options> [ ,...n ] ]
   } [ ,...n ]
[;]  

--To Restore Specific Pages:
RESTORE DATABASE { database_name | @database_name_var }
   PAGE = 'file:page [ ,...n ]'
 [ , <file_or_filegroups> ] [ ,...n ]
 [ FROM <backup_device> [ ,...n ] ]
   WITH
       NORECOVERY
      [ , <general_WITH_options> [ ,...n ] ]
[;]

--To Restore a Transaction Log:
RESTORE LOG { database_name | @database_name_var }
 [ <file_or_filegroup_or_pages> [ ,...n ] ]
 [ FROM <backup_device> [ ,...n ] ]
 [ WITH
   {
     [ RECOVERY | NORECOVERY | STANDBY =
        {standby_file_name | @standby_file_name_var }
       ]
    | , <general_WITH_options> [ ,...n ]
    | , <replication_WITH_option>
    | , \<point_in_time_WITH_options-RESTORE_LOG>
   } [ ,...n ]
 ]
[;]

--To Revert a Database to a Database Snapshot:
RESTORE DATABASE { database_name | @database_name_var }
FROM DATABASE_SNAPSHOT = database_snapshot_name

<backup_device>::=
{
   { logical_backup_device_name |
      @logical_backup_device_name_var }
 | { DISK
     | TAPE
     | URL
   } = { 'physical_backup_device_name' |
      @physical_backup_device_name_var }
}
Note: URL is the format used to specify the location and the file name for the Microsoft Azure Blob. Although Microsoft Azure storage is a service, the implementation is similar to disk and tape to allow for a consistent and seamless restore experience for all the three devices.
<files_or_filegroups>::=
{
   FILE = { logical_file_name_in_backup | @logical_file_name_in_backup_var }
 | FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }
 | READ_WRITE_FILEGROUPS
}

<general_WITH_options> [ ,...n ]::=
--Restore Operation Options
   MOVE 'logical_file_name_in_backup' TO 'operating_system_file_name'
          [ ,...n ]
 | REPLACE
 | RESTART
 | RESTRICTED_USER | CREDENTIAL

--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 }
 | BLOCKSIZE = { blocksize | @blocksize_variable }

--Data Transfer Options
 | BUFFERCOUNT = { buffercount | @buffercount_variable }
 | MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }

--Error Management Options
 | { CHECKSUM | NO_CHECKSUM }
 | { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }

--Monitoring Options
 | STATS [ = percentage ]

--Tape Options.
 | { REWIND | NOREWIND }
 | { UNLOAD | NOUNLOAD }

<replication_WITH_option>::=
 | KEEP_REPLICATION

<change_data_capture_WITH_option>::=
 | KEEP_CDC

<FILESTREAM_WITH_option>::=
 | FILESTREAM ( DIRECTORY_NAME = directory_name )

<service_broker_WITH_options>::=
 | ENABLE_BROKER
 | ERROR_BROKER_CONVERSATIONS
 | NEW_BROKER

\<point_in_time_WITH_options-RESTORE_DATABASE>::=
 | {
   STOPAT = { 'datetime'| @datetime_var }
 | STOPATMARK = 'lsn:lsn_number'
                 [ AFTER 'datetime']
 | STOPBEFOREMARK = 'lsn:lsn_number'
                 [ AFTER 'datetime']
   }

\<point_in_time_WITH_options-RESTORE_LOG>::=
 | {
   STOPAT = { 'datetime'| @datetime_var }
 | STOPATMARK = { 'mark_name' | 'lsn:lsn_number' }
                 [ AFTER 'datetime']
 | STOPBEFOREMARK = { 'mark_name' | 'lsn:lsn_number' }
                 [ AFTER 'datetime']
   }

ArgumentosArguments

Para obter descrições dos argumentos, consulte Argumentos RESTORE.For descriptions of the arguments, see RESTORE Arguments.

Sobre cenários de restauraçãoAbout Restore Scenarios

O SQL ServerSQL Server dá suporte a vários cenários de restauração:SQL ServerSQL Server supports a variety of restore scenarios:

Quando houver suporte para a restauração online, se o banco de dados estiver online, restaurações de páginas e de arquivos serão automaticamente restaurações online e, também, restaurações de grupos de arquivos secundários após o estágio inicial de uma restauração por etapas.Where online restore is supported, if the database is online, file restores and page restores are automatically online restores and, also, restores of secondary filegroup after the initial stage of a piecemeal restore.

Observação

As restaurações online podem envolver transações adiadas.Online restores can involve deferred transactions.

Para obter mais informações, consulte Restauração online – SQL Server.For more information, see Online Restore.

Considerações adicionais sobre opções de RESTOREAdditional Considerations About RESTORE Options

Palavras-chave de RESTORE descontinuadasDiscontinued RESTORE Keywords

As palavras-chave a seguir foram descontinuadas no SQL Server 2008SQL Server 2008:The following keywords were discontinued in SQL Server 2008SQL Server 2008:

Palavra-chave descontinuadaDiscontinued keyword Substituída por...Replaced by... Exemplo de palavra-chave de substituiçãoExample of replacement keyword
LOADLOAD RESTORERESTORE RESTORE DATABASE
TRANSACTIONTRANSACTION LOGLOG RESTORE LOG
DBO_ONLYDBO_ONLY RESTRICTED_USERRESTRICTED_USER RESTORE DATABASE ... WITH RESTRICTED_USER

RESTORE LOGRESTORE LOG

RESTORE LOG pode incluir uma lista de arquivos para permitir a criação de arquivos durante o roll forward.RESTORE LOG can include a file list to allow for creation of files during roll forward. Isso é usado quando o backup de log contiver registros de log gravados quando um arquivo foi adicionado ao banco de dados.This is used when the log backup contains log records written when a file was added to the database.

Observação

Para um banco de dados que usa o modelo de recuperação completa ou bulk-logged, na maioria dos casos é necessário fazer backup do final do log antes da restauração do banco de dados.For a database using the full or bulk-logged recovery model, in most cases you must back up the tail of the log before restoring the database. Restaurar um banco de dados sem antes fazer backup do final do log resultará em um erro, a não ser que a instrução RESTORE DATABASE contenha a cláusula WITH REPLACE ou WITH STOPAT, que deve especificar um momento ou transação que ocorreu após o final do backup de dados.Restoring a database without first backing up the tail of the log results in an error, unless the RESTORE DATABASE statement contains either the WITH REPLACE or the WITH STOPAT clause, which must specify a time or transaction that occurred after the end of the data backup. Para obter mais informações sobre backups da parte final do log, consulte Backups da parte final do log – SQL Server.For more information about tail-log backups, see Tail-Log Backups.

Comparação de RECOVERY e NORECOVERYComparison of RECOVERY and NORECOVERY

A reversão é controlada pela instrução RESTORE nas opções [ RECOVERY | NORECOVERY ]:Roll back is controlled by the RESTORE statement through the [ RECOVERY | NORECOVERY ] options:

  • NORECOVERY especifica que a reversão não ocorre.NORECOVERY specifies that roll back not occur. Isso permite que o roll forward continue com a próxima instrução na sequência.This allows roll forward to continue with the next statement in the sequence.

    Nesse caso, a sequência de restauração pode restaurar outros backups e efetuar roll forward neles.In this case, the restore sequence can restore other backups and roll them forward.

  • RECOVERY (o padrão) indica que a reversão deve ser executada após a conclusão do roll forward no backup atual.RECOVERY (the default) indicates that roll back should be performed after roll forward is completed for the current backup.

    A recuperação do banco de dados exige que todo o conjunto de dados que está sendo restaurado (o conjunto de roll forward) seja consistente com o banco de dados.Recovering the database requires that the entire set of data being restored (the roll forward set) is consistent with the database. Se o conjunto de roll forward não tiver ido longe o suficiente para ficar consistente com o banco de dados e RECOVERY estiver especificado, o Mecanismo de Banco de DadosDatabase Engine emitirá um erro.If the roll forward set has not been rolled forward far enough to be consistent with the database and RECOVERY is specified, the Mecanismo de Banco de DadosDatabase Engine issues an error.

Suporte de compatibilidadeCompatibility Support

Backups do master, model e msdb que foram criados em uma versão anterior do SQL ServerSQL Server não podem ser restaurados pelo SQL Server 2017SQL Server 2017.Backups of master, model and msdb that were created by using an earlier version of SQL ServerSQL Server cannot be restored by SQL Server 2017SQL Server 2017.

Observação

Nenhum backup do SQL ServerSQL Server pode ser restaurado para uma versão anterior do SQL ServerSQL Server a não ser na versão na qual o backup foi criado.No SQL ServerSQL Server backup be restored to an earlier version of SQL ServerSQL Server than the version on which the backup was created.

Cada versão do SQL ServerSQL Server usa um caminho padrão diferente das versões anteriores.Each version of SQL ServerSQL Server uses a different default path than earlier versions. Assim, para restaurar um banco de dados que foi criado no local padrão dos backups de versões anteriores, você deve usar a opção MOVE.Therefore, to restore a database that was created in the default location for earlier version backups, you must use the MOVE option. Para obter informações sobre o novo caminho padrão, consulte Locais de arquivos para instâncias padrão e nomeadas do SQL Server.For information about the new default path, see File Locations for Default and Named Instances of SQL Server.

Depois de você restaurar um banco de dados da versão anterior para o SQL Server 2017SQL Server 2017, o banco de dados será atualizado automaticamente.After you restore an earlier version database to SQL Server 2017SQL Server 2017, the database is automatically upgraded. Normalmente, o banco de dados se torna disponível imediatamente.Typically, the database becomes available immediately. No entanto, se um banco de dados do SQL Server 2005 (9.x)SQL Server 2005 (9.x) tiver índices de texto completo, o processo de atualização importará, redefinirá ou recriará esses índices, dependendo da configuração da propriedade de servidor upgrade_option.However, if a SQL Server 2005 (9.x)SQL Server 2005 (9.x) database has full-text indexes, the upgrade process either imports, resets, or rebuilds them, depending on the setting of the upgrade_option server property. Se a opção de atualização for definida como importar (upgrade_option = 2) ou recriar (upgrade_option = 0), os índices de texto completo permanecerão indisponíveis durante a atualização.If the upgrade option is set to import (upgrade_option = 2) or rebuild (upgrade_option = 0), the full-text indexes will be unavailable during the upgrade. Dependendo da quantidade de dados a serem indexados, a importação pode levar várias horas, e a recriação pode ser até dez vezes mais demorada.Depending the amount of data being indexed, importing can take several hours, and rebuilding can take up to ten times longer. Lembre-se também de que, quando a opção de atualização estiver definida para importar, os índices de texto completo associados serão recriados se um catálogo de texto completo não estiver disponível.Note also that when the upgrade option is set to import, the associated full-text indexes are rebuilt if a full-text catalog is not available. Para alterar a configuração da propriedade de servidor upgrade_option , use sp_fulltext_service.To change the setting of the upgrade_option server property, use sp_fulltext_service.

Quando um banco de dados é anexado ou restaurado pela primeira vez a uma nova instância do SQL ServerSQL Server, uma cópia da chave mestra de banco de dados (criptografada pela chave mestra de serviço) ainda não está armazenada no servidor.When a database is first attached or restored to a new instance of SQL ServerSQL Server, a copy of the database master key (encrypted by the service master key) is not yet stored in the server. É necessário usar a instrução OPEN MASTER KEY para descriptografar a DMK (chave mestra do banco de dados).You must use the OPEN MASTER KEY statement to decrypt the database master key (DMK). Após a descriptografia da DMK, você tem a opção de habilitar a descriptografia automática no futuro usando a instrução ALTER MASTER KEY REGENERATE para provisionar o servidor com uma cópia da DMK criptografada com a SMK (chave mestra de serviço).Once the DMK has been decrypted, you have the option of enabling automatic decryption in the future by using the ALTER MASTER KEY REGENERATE statement to provision the server with a copy of the DMK, encrypted with the service master key (SMK). Quando um banco de dados for atualizado de uma versão anterior, a DMK deverá ser regenerada para usar o algoritmo AES mais recente.When a database has been upgraded from an earlier version, the DMK should be regenerated to use the newer AES algorithm. Para obter mais informações sobre como regenerar a DMK, consulte ALTER MASTER KEY.For more information about regenerating the DMK, see ALTER MASTER KEY. O tempo necessário para regenerar a chave DMK para atualizar o AES depende do número de objetos protegidos pela DMK.The time required to regenerate the DMK key to upgrade to AES depends upon the number of objects protected by the DMK. É necessário regenerar a chave DMK para atualizar o AES somente uma vez, isso não tem impacto sobre regenerações futuras como parte de uma estratégia de rotação de chave.Regenerating the DMK key to upgrade to AES is only necessary once, and has no impact on future regenerations as part of a key rotation strategy.

Comentários geraisGeneral Remarks

Durante uma restauração offline, se o banco de dados especificado estiver em uso, RESTORE forçará a saída do usuário depois de um pequeno atraso.During an offline restore, if the specified database is in use, RESTORE forces the users off after a short delay. Para restauração online de um grupo de arquivos não primário, o banco de dados pode permanecer em uso, exceto quando o grupo de arquivos que está sendo restaurado for colocado offline.For online restore of a non-primary filegroup, the database can stay in use except when the filegroup being restored is being taken offline. Todos os dados no banco de dados especificado são substituídos pelos dados restaurados.Any data in the specified database is replaced by the restored data.

Para obter mais informações sobre a recuperação de banco de dados, consulte Visão geral da restauração e recuperação.For more information about database recovery, see Restore and Recovery Overview.

As operações de restauração entre plataformas, mesmo entre tipos diferentes de processadores, podem ser executadas desde que a ordenação do banco de dados tenha suporte no sistema operacional.Cross-platform restore operations, even between different processor types, can be performed as long as the collation of the database is supported by the operating system.

RESTORE pode ser reiniciado depois de um erro.RESTORE can be restarted after an error. Além disso, você pode instruir RESTORE a prosseguir, apesar dos erros, e ele restaura o máximo possível de dados (consulte a opção CONTINUE_AFTER_ERROR).In addition, you can instruct RESTORE to continue despite errors, and it restores as much data as possible (see the CONTINUE_AFTER_ERROR option).

RESTORE não é permitido em uma transação explícita ou implícita.RESTORE is not allowed in an explicit or implicit transaction.

A restauração de um banco de dados mestre danificado é executada por meio de um procedimento especial.Restoring a damaged master database is performed using a special procedure. Para obter mais informações, consulte Fazer backup e restaurar bancos de dados do sistema.For more information, see Back Up and Restore of System Databases.

A restauração de um banco de dados limpa o cache de planos da instância do SQL ServerSQL Server.Restoring a database clears the plan cache for the instance of SQL ServerSQL Server. A limpeza do cache de planos gera uma recompilação de todos os planos de execução subsequentes e pode provocar uma redução repentina e temporária do desempenho de consultas.Clearing the plan cache causes a recompilation of all subsequent execution plans and can cause a sudden, temporary decrease in query performance. Para cada armazenamento em cache limpo no cache de planos, o log de erros do SQL ServerSQL Server contém a seguinte mensagem informativa: "SQL ServerSQL Server encontrou %d ocorrências de liberação de armazenamento em cache para o armazenamento em cache '%s' (parte do cache de planos) devido a operações de reconfiguração ou manutenção do banco de dados".For each cleared cachestore in the plan cache, the SQL ServerSQL Server error log contains the following informational message: " SQL ServerSQL Server has encountered %d occurrence(s) of cachestore flush for the '%s' cachestore (part of plan cache) due to some database maintenance or reconfigure operations". Essa mensagem é registrada a cada cinco minutos, contanto que o cache seja liberado dentro desse intervalo de tempo.This message is logged every five minutes as long as the cache is flushed within that time interval.

Para restaurar um banco de dados de disponibilidade, primeiro restaure o banco de dados à instância de SQL ServerSQL Server, em seguida, adicione o banco de dados ao grupo de disponibilidade.To restore an availability database, first restore the database to the instance of SQL ServerSQL Server, and then add the database to the availability group.

InteroperabilidadeInteroperability

Restauração e configuração do banco de dadosDatabase Settings and Restoring

Durante uma restauração, a maioria das opções do banco de dados que são configuráveis com ALTER DATABASE é redefinida com os valores em vigor no momento do término do backup.During a restore, most of the database options that are settable using ALTER DATABASE are reset to the values in force at the time of the end of backup.

Porém, o uso da opção WITH RESTRICTED_USER substitui esse comportamento pela configuração da opção de acesso do usuário.Using the WITH RESTRICTED_USER option, however, overrides this behavior for the user access option setting. Essa configuração sempre é definida seguindo uma instrução RESTORE que inclui a opção WITH RESTRICTED_USER.This setting is always set following a RESTORE statement, which includes the WITH RESTRICTED_USER option.

Restaurando um banco de dados criptografadoRestoring an Encrypted Database

Para restaurar um banco de dados criptografado, é necessário ter acesso ao certificado ou à chave assimétrica usada para criptografar o banco de dados.To restore a database that is encrypted, you must have access to the certificate or asymmetric key that was used to encrypt the database. Sem o certificado ou a chave assimétrica, o banco de dados não pode ser restaurado.Without the certificate or asymmetric key, the database cannot be restored. Como resultado, o certificado usado para criptografar a chave de criptografia do banco de dados deverá ser retido enquanto o backup for necessário.As a result, the certificate that is used to encrypt the database encryption key must be retained as long as the backup is needed. Para obter mais informações, consulte SQL Server Certificates and Asymmetric Keys.For more information, see SQL Server Certificates and Asymmetric Keys.

Restaurando um bancos de dados habilitado para armazenamento vardecimalRestoring a Database Enabled for vardecimal Storage

O backup e a restauração funcionam corretamente com o formato de armazenamento vardecimal.Backup and restore work correctly with the vardecimal storage format. Para obter mais informações sobre o formato de armazenamento vardecimal, consulte sp_db_vardecimal_storage_format.For more information about vardecimal storage format, see sp_db_vardecimal_storage_format.

Restaurar dados de texto completoRestore Full-Text Data

Dados de texto completo são restaurados com outros dados do banco de dados durante uma restauração completa.Full-text data is restored together with other database data during a complete restore. Usando a sintaxe RESTORE DATABASE database_name FROM backup_device comum, os arquivos de texto completo são restaurados como parte da restauração de arquivo de banco de dados.Using the regular RESTORE DATABASE database_name FROM backup_device syntax, the full-text files are restored as part of the database file restore.

A instrução RESTORE também pode ser usada para executar restaurações em locais alternados, restaurações diferenciais, restaurações de arquivos e grupos de arquivos e restaurações de arquivos e grupos de arquivos diferenciais de dados de texto completo.The RESTORE statement also can be used to perform restores to alternate locations, differential restores, file and filegroup restores, and differential file and filegroup restores of full-text data. Além disso, RESTORE pode restaurar apenas arquivos de texto completo, assim como dados de banco de dados.In addition, RESTORE can restore full-text files only, as well as with database data.

Observação

Catálogos de texto completo importados do SQL Server 2005 (9.x)SQL Server 2005 (9.x) ainda são tratados como arquivos de banco de dados.Full-text catalogs imported from SQL Server 2005 (9.x)SQL Server 2005 (9.x) are still treated as database files. Nesse caso, o procedimento usado pelo SQL Server 2005 (9.x)SQL Server 2005 (9.x) para fazer backup de catálogos de texto completo ainda se aplica, exceto pelo fato de que não é mais necessário pausar e retomar a operação de backup.For these, the SQL Server 2005 (9.x)SQL Server 2005 (9.x) procedure for backing up full-text catalogs remains applicable, except that pausing and resuming during the backup operation are no longer necessary. Para obter mais informações, consulte Fazendo backup e restaurando catálogos de texto completo.For more information, see Backing Up and Restoring Full-Text Catalogs.

MetadadosMetadata

O SQL ServerSQL Server inclui tabelas de histórico de backup e restauração que controlam a atividade de backup e restauração de cada instância de servidor.SQL ServerSQL Server includes backup and restore history tables that track the backup and restore activity for each server instance. Quando uma restauração é executada, as tabelas de histórico de backup também são modificadas.When a restore is performed, the backup history tables are also modified. Para obter informações sobre essas tabelas, consulte Histórico de backup e informações de cabeçalho.For information on these tables, see Backup History and Header Information.

Impacto da opção REPLACEREPLACE Option Impact

REPLACE raramente deve ser usado e só depois de cuidadosa consideração.REPLACE should be used rarely and only after careful consideration. Normalmente a restauração evita a substituição acidental de um banco de dados por um banco de dados diferente.Restore normally prevents accidentally overwriting a database with a different database. Se o banco de dados especificado em uma instrução RESTORE já existir no servidor atual e a GUID de família do banco de dados especificado for diferente da GUID de família do banco de dados registrado no conjunto de backup, o banco de dados não será restaurado.If the database specified in a RESTORE statement already exists on the current server and the specified database family GUID differs from the database family GUID recorded in the backup set, the database is not restored. Essa é uma proteção importante.This is an important safeguard.

A opção REPLACE substitui várias verificações de segurança importantes que a restauração geralmente executa.The REPLACE option overrides several important safety checks that restore normally performs. As verificações substituídas são as seguintes:The overridden checks are as follows:

  • Restauração de um banco de dados existente com um backup tirado de outro banco de dados.Restoring over an existing database with a backup taken of another database.

    Com a opção REPLACE, a restauração permite que você substitua um banco de dados existente por qualquer banco de dados do conjunto de backup, mesmo que o nome do banco de dados especificado seja diferente do nome de banco de dados registrado no conjunto de backup.With the REPLACE option, restore allows you to overwrite an existing database with whatever database is in the backup set, even if the specified database name differs from the database name recorded in the backup set. Isso pode resultar na substituição acidental de um banco de dados por um banco de dados diferente.This can result in accidentally overwriting a database by a different database.

  • Restauração de um banco de dados que usa o modelo de recuperação bulk-logged onde um backup do final do log não foi feito e a opção STOPAT não é usada.Restoring over a database using the full or bulk-logged recovery model where a tail-log backup has not been taken and the STOPAT option is not used.

    Com a opção REPLACE, você pode perder trabalho confirmado porque não foi feito backup do log gravado mais recentemente.With the REPLACE option, you can lose committed work, because the log written most recently has not been backed up.

  • Substituição de arquivos existentes.Overwriting existing files.

    Por exemplo, um engano poderia permitir a substituição de arquivos do tipo errado, como arquivos .xls, ou que estivessem sendo usados por outro banco de dados que não estivesse online.For example, a mistake could allow overwriting files of the wrong type, such as .xls files, or that are being used by another database that is not online. A perda de dados arbitrária é possível se arquivos existentes forem substituídos, embora o banco de dados restaurado esteja completo.Arbitrary data loss is possible if existing files are overwritten, although the restored database is complete.

Refazendo uma restauraçãoRedoing a Restore

Não é possível desfazer os efeitos de uma restauração; no entanto, você pode recusar os efeitos de roll forward e de cópia dos dados reiniciando em uma base de um arquivo por vez.Undoing the effects of a restore is not possible; however, you can negate the effects of the data copy and roll forward by starting over on a per-file basis. Para recomeçar, restaure o arquivo desejado e execute o roll forward novamente.To start over, restore the desired file and perform the roll forward again. Por exemplo, se você restaurou muitos backups de log acidentalmente e excedeu o ponto de parada pretendido, reinicie a sequência.For example, if you accidentally restored too many log backups and overshot your intended stopping point, you would have to restart the sequence.

Uma sequência de restauração pode ser anulada e reiniciada com a restauração de todo o conteúdo dos arquivos afetados.A restore sequence can be aborted and restarted by restoring the entire contents of the affected files.

Revertendo um banco de dados para um instantâneo de banco de dadosReverting a Database to a Database Snapshot

Uma operação de reversão de banco de dados (especificada com a opção DATABASE_SNAPSHOT) reverte um banco de dados de origem completo, revertendo-o para o momento de um instantâneo do banco de dados, ou seja, com a substituição do banco de dados de origem pelos dados do momento específico mantidos no instantâneo do banco de dados especificado.A revert database operation (specified using the DATABASE_SNAPSHOT option) takes a full source database back in time by reverting it to the time of a database snapshot, that is, overwriting the source database with data from the point in time maintained in the specified database snapshot. Só o instantâneo para o qual você está revertendo pode existir atualmente.Only the snapshot to which you are reverting can currently exist. A operação de reversão, então, reconstrói o log (portanto, você não poderá efetuar roll forward em um banco de dados revertido até o ponto do erro do usuário).The revert operation then rebuilds the log (therefore, you cannot later roll forward a reverted database to the point of user error).

A perda de dados é limitada às atualizações no banco de dados desde a criação do instantâneo.Data loss is confined to updates to the database since the snapshot's creation. Os metadados de um banco de dados revertido são iguais aos metadados no momento da criação do instantâneo.The metadata of a reverted database is the same as the metadata at the time of snapshot creation. No entanto, a reversão para um instantâneo descarta todos os catálogos de texto completo.However, reverting to a snapshot drops all the full-text catalogs.

A reversão a partir de um instantâneo do banco de dados não é destinada à recuperação de mídia.Reverting from a database snapshot is not intended for media recovery. Ao contrário de um conjunto de backup regular, o instantâneo de banco de dados é uma cópia incompleta dos arquivos do banco de dados.Unlike a regular backup set, the database snapshot is an incomplete copy of the database files. Se o banco de dados ou o instantâneo do banco de dados está corrompido, é provável que a reversão a partir de um instantâneo seja impossível.If either the database or the database snapshot is corrupted, reverting from a snapshot is likely to be impossible. Além disso, mesmo quando possível, é improvável que a reversão corrija o problema no caso de corrupção.Furthermore, even when possible, reverting in the event of corruption is unlikely to correct the problem.

Restrições na reversãoRestrictions on Reverting

Não há suporte para a reversão nas seguintes condições:Reverting is unsupported under the following conditions:

  • O banco de dados de origem contém algum grupo de arquivos somente leitura ou compactado.The source database contains any read-only or compressed filegroups.
  • Há algum arquivo offline que estava online quando o instantâneo foi criado.Any files are offline that were online when the snapshot was created.
  • Existe mais de um instantâneo do banco de dados atualmente.More than one snapshot of the database currently exists.

Para obter mais informações, consulte Reverter um banco de dados para um instantâneo do banco de dados.For more information, see Revert a Database to a Database Snapshot.

SegurançaSecurity

Uma operação de backup pode, opcionalmente, especificar senhas para um conjunto de mídias, um conjunto de backup ou ambos.A backup operation may optionally specify passwords for a media set, a backup set, or both. 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.When a password has been defined on a media set or backup set, you must specify the correct password or passwords in the RESTORE statement. Essas senhas impedem operações de restauração não autorizadas e anexações não autorizadas de conjuntos de backup para mídia usando ferramentas do SQL ServerSQL Server.These passwords prevent unauthorized restore operations and unauthorized appends of backup sets to media using SQL ServerSQL Server tools. Porém, mídia protegida por senha pode ser substituída pela opção FORMAT da instrução BACKUP.However, password-protected media can be overwritten by the BACKUP statement's FORMAT option.

Importante

A proteção fornecida por esta senha é fraca.The protection provided by this password is weak. Destina-se a evitar uma restauração incorreta com o uso de ferramentas de SQL ServerSQL Server por usuários autorizados ou não autorizados.It is intended to prevent an incorrect restore using SQL ServerSQL Server tools by authorized or unauthorized users. Não impede a leitura dos dados de backup por outros meios ou a substituição da senha.It does not prevent the reading of the backup data by other means or the replacement of the password. Este recurso está em modo de manutenção e talvez seja removido em uma versão futura do Microsoft SQL Server.This feature is in maintenance mode and may be removed in a future version of Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.Avoid using this feature in new development work, and plan to modify applications that currently use this feature.A melhor prática para proteger backups é armazenar as fitas de backup em um local seguro ou fazer backup em arquivos de disco protegidos por ACLs (listas de controle de acesso) adequadas.The best practice for protecting backups is to store backup tapes in a secure location or back up to disk files that are protected by adequate access control lists (ACLs). As ACLs devem ser definidas no diretório raiz em que os backups são criados.The ACLs should be set on the directory root under which backups are created.

Observação

Para obter informações específicas sobre o backup e a restauração do SQL Server com o Armazenamento de Blobs do Microsoft Azure, consulte Backup e restauração do SQL Server com o serviço de Armazenamento de Blobs do Microsoft Azure.For information specific to SQL Server backup and restore with the Microsoft Azure Blob storage, see SQL Server Backup and Restore with Microsoft Azure Blob Storage Service.

PermissõesPermissions

Se o banco de dados que está sendo restaurado não existir, o usuário deverá ter permissões CREATE DATABASE para poder executar o comando RESTORE.If the database being restored does not exist, the user must have CREATE DATABASE permissions to be able to execute RESTORE. Se o banco de dados existir, as permissões RESTORE usarão como padrão os membros das funções de servidor fixas sysadmin e dbcreator e o proprietário (dbo) do banco de dados (para a opção FROM DATABASE_SNAPSHOT, o banco de dados sempre existe).If the database exists, RESTORE permissions default to members of the sysadmin and dbcreator fixed server roles and the owner (dbo) of the database (for the FROM DATABASE_SNAPSHOT option, the database always exists).

As permissões RESTORE são concedidas a funções nas quais as informações de associação estão sempre disponíveis para o servidor.RESTORE permissions are given to roles in which membership information is always readily available to the server. Como a associação da função de banco de dados fixa pode ser verificada apenas quando o banco de dados está acessível e não danificado, o que nem sempre é o caso quando RESTORE é executado, os membros da função de banco de dados fixa db_owner não têm permissões RESTORE.Because fixed database role membership can be checked only when the database is accessible and undamaged, which is not always the case when RESTORE is executed, members of the db_owner fixed database role do not have RESTORE permissions.

ExemplosExamples

Todos os exemplos presumem que um backup de banco de dados completo foi executado.All the examples assume that a full database backup has been performed.

Os exemplos de RESTORE incluem o seguinte:The RESTORE examples include the following:

Observação

Para obter outros exemplos, consulte os tópicos de instruções de restauração listados em Visão geral de recuperação e restauração.For additional examples, see the restore how-to topics that are listed in Restore and Recovery Overview.

A.A. Restaurando um banco de dados completoRestoring a full database

O exemplo a seguir restaura um backup de banco de dados completo do dispositivo de backup lógico AdventureWorksBackups.The following example restores a full database backup from the AdventureWorksBackups logical backup device. Para obter um exemplo de como criar esse dispositivo, consulte Dispositivos de backup.For an example of creating this device, see Backup Devices.

RESTORE DATABASE AdventureWorks2012
  FROM AdventureWorks2012Backups;

Observação

Para um banco de dados que usa o modelo de recuperação completa ou bulk-logged, o SQL ServerSQL Server requer que se faça backup do final do log antes da restauração do banco de dados.For a database using the full or bulk-logged recovery model, SQL ServerSQL Server requires in most cases that you back up the tail of the log before restoring the database. Para obter mais informações, consulte Backups da parte final do log.For more information, see Tail-Log Backups.

[Início dos exemplos][Top of examples]

B.B. Restaurando backups de banco de dados diferenciais e completosRestoring full and differential database backups

O exemplo a seguir restaura um backup de banco de dados completo seguido por um backup diferencial do dispositivo de backup Z:\SQLServerBackups\AdventureWorks2012.bak, que contém os dois backups.The following example restores a full database backup followed by a differential backup from the Z:\SQLServerBackups\AdventureWorks2012.bak backup device, which contains both backups. O backup de banco de dados completo a ser restaurado é o sexto conjunto de backup no dispositivo (FILE = 6), e o backup de banco de dados diferencial é o nono no dispositivo (FILE = 9).The full database backup to be restored is the sixth backup set on the device (FILE = 6), and the differential database backup is the ninth backup set on the device (FILE = 9). Assim que o backup diferencial é recuperado, o banco de dados é recuperado.As soon as the differential backup is recovered, the database is recovered.

RESTORE DATABASE AdventureWorks2012
    FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2012.bak'
    WITH FILE = 6
      NORECOVERY;
RESTORE DATABASE AdventureWorks2012
    FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2012.bak'
    WITH FILE = 9
      RECOVERY;

[Início dos exemplos][Top of examples]

C.C. Restaurando um banco de dados usando a sintaxe RESTARTRestoring a database using RESTART syntax

O exemplo a seguir usa a opção RESTART para reiniciar uma operação RESTORE interrompida por uma deficiência de força no servidor.The following example uses the RESTART option to restart a RESTORE operation interrupted by a server power failure.

-- This database RESTORE halted prematurely due to power failure.
RESTORE DATABASE AdventureWorks2012
    FROM AdventureWorksBackups;
-- Here is the RESTORE RESTART operation.
RESTORE DATABASE AdventureWorks2012
    FROM AdventureWorksBackups WITH RESTART;

[Início dos exemplos][Top of examples]

D.D. Restaurando um banco de dados e movendo arquivosRestoring a database and move files

O exemplo a seguir restaura um banco de dados completo e log de transações e move o banco de dados restaurado para o diretório C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data.The following example restores a full database and transaction log and moves the restored database into the C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data directory.

RESTORE DATABASE AdventureWorks2012
    FROM AdventureWorksBackups
    WITH NORECOVERY,
      MOVE 'AdventureWorks2012_Data' TO
'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\NewAdvWorks.mdf',
      MOVE 'AdventureWorks2012_Log'
TO 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\NewAdvWorks.ldf';
RESTORE LOG AdventureWorks2012
    FROM AdventureWorksBackups
    WITH RECOVERY;

[Início dos exemplos][Top of examples]

E.E. Copiando um banco de dados usando BACKUP e RESTORECopying a database using BACKUP and RESTORE

O exemplo a seguir usa as instruções BACKUP e RESTORE para fazer uma cópia do banco de dados AdventureWorks2012AdventureWorks2012.The following example uses both the BACKUP and RESTORE statements to make a copy of the AdventureWorks2012AdventureWorks2012 database. A instrução MOVE causa a restauração dos dados e do arquivo de log nos locais especificados.The MOVE statement causes the data and log file to be restored to the specified locations. A instrução RESTORE FILELISTONLY é usada para determinar o número e os nomes dos arquivos no banco de dados que está sendo restaurado.The RESTORE FILELISTONLY statement is used to determine the number and names of the files in the database being restored. A nova cópia do banco de dados é nomeada TestDB.The new copy of the database is named TestDB. Para obter mais informações, consulte RESTORE FILELISTONLY.For more information, see RESTORE FILELISTONLY.

BACKUP DATABASE AdventureWorks2012
    TO AdventureWorksBackups ;

RESTORE FILELISTONLY
    FROM AdventureWorksBackups ;

RESTORE DATABASE TestDB
    FROM AdventureWorksBackups
    WITH MOVE 'AdventureWorks2012_Data' TO 'C:\MySQLServer\testdb.mdf',
    MOVE 'AdventureWorks2012_Log' TO 'C:\MySQLServer\testdb.ldf';
GO

[Início dos exemplos][Top of examples]

F.F. Restauração pontual usando STOPATRestoring to a point-in-time using STOPAT

O exemplo a seguir restaura um banco de dados para seu estado de 12:00 AM em April 15, 2020 e mostra uma operação de restauração que envolve vários backups de log.The following example restores a database to its state as of 12:00 AM on April 15, 2020 and shows a restore operation that involves multiple log backups. No dispositivo de backup, AdventureWorksBackups, o backup de banco de dados completo a ser restaurado é o terceiro conjunto de backup no dispositivo (FILE = 3), o primeiro backup de log é o quarto conjunto de backup (FILE = 4), e o segundo backup de log é o quinto conjunto de backup (FILE = 5).On the backup device, AdventureWorksBackups, the full database backup to be restored is the third backup set on the device (FILE = 3), the first log backup is the fourth backup set (FILE = 4), and the second log backup is the fifth backup set (FILE = 5).

RESTORE DATABASE AdventureWorks2012
    FROM AdventureWorksBackups
    WITH FILE=3, NORECOVERY;

RESTORE LOG AdventureWorks2012
    FROM AdventureWorksBackups
    WITH FILE=4, NORECOVERY, STOPAT = 'Apr 15, 2020 12:00 AM';

RESTORE LOG AdventureWorks2012
    FROM AdventureWorksBackups
    WITH FILE=5, NORECOVERY, STOPAT = 'Apr 15, 2020 12:00 AM';
RESTORE DATABASE AdventureWorks2012 WITH RECOVERY;

[Início dos exemplos][Top of examples]

G.G. Restaurando o log de transações até uma marcaRestoring the transaction log to a mark

O exemplo a seguir restaura o log de transações até a marca na transação marcada denominada ListPriceUpdate.The following example restores the transaction log to the mark in the marked transaction named ListPriceUpdate.

USE AdventureWorks2012
GO
BEGIN TRANSACTION ListPriceUpdate
    WITH MARK 'UPDATE Product list prices';
GO

UPDATE Production.Product
    SET ListPrice = ListPrice * 1.10
    WHERE ProductNumber LIKE 'BK-%';
GO

COMMIT TRANSACTION ListPriceUpdate;
GO

-- Time passes. Regular database
-- and log backups are taken.
-- An error occurs in the database.
USE master;
GO

RESTORE DATABASE AdventureWorks2012
FROM AdventureWorksBackups
WITH FILE = 3, NORECOVERY;
GO

RESTORE LOG AdventureWorks2012
  FROM AdventureWorksBackups
    WITH FILE = 4,
    RECOVERY,
    STOPATMARK = 'UPDATE Product list prices';

[Início dos exemplos][Top of examples]

H.H. Restaurando com o uso da sintaxe de TAPERestoring using TAPE syntax

O exemplo a seguir restaura um backup de banco de dados completo de um dispositivo de backup TAPE.The following example restores a full database backup from a TAPE backup device.

RESTORE DATABASE AdventureWorks2012
    FROM TAPE = '\\.\tape0';

[Início dos exemplos][Top of examples]

I.I. Restaurando usando a sintaxe FILE e FILEGROUPRestoring using FILE and FILEGROUP syntax

O exemplo a seguir restaura um banco de dados nomeado MyDatabase que tem dois arquivos, um grupo de arquivos secundário e um log de transações.The following example restores a database named MyDatabase that has two files, one secondary filegroup, and one transaction log. O banco de dados usa o modelo de recuperação completa.The database uses the full recovery model.

O backup do banco de dados é o nono conjunto de backup no conjunto de mídias em um dispositivo de backup lógico nomeado MyDatabaseBackups.The database backup is the ninth backup set in the media set on a logical backup device named MyDatabaseBackups. Depois, três backups de log, que estão nos próximos três conjuntos de backup (10, 11 e 12) no dispositivo MyDatabaseBackups, são restaurados usando WITH NORECOVERY.Next, three log backups, which are in the next three backup sets (10, 11, and 12) on the MyDatabaseBackups device, are restored by using WITH NORECOVERY. Depois de restaurar o último backup de log, o banco de dados é recuperado.After restoring the last log backup, the database is recovered.

Observação

A recuperação é executada como uma etapa separada para reduzir a possibilidade de recuperação antecipada, antes que todos os backups de log tenham sido restaurados.Recovery is performed as a separate step to reduce the possibility of you recovering too early, before all of the log backups have been restored.

No RESTORE DATABASE, observe que há dois tipos de opções de FILE.In the RESTORE DATABASE, notice that there are two types of FILE options. As opções FILE que precedem o nome do dispositivo de backup especificam os nomes de arquivos lógicos dos arquivos de banco de dados restaurados do conjunto de backup; por exemplo, FILE = 'MyDatabase_data_1'.The FILE options preceding the backup device name specify the logical file names of the database files that are to be restored from the backup set; for example, FILE = 'MyDatabase_data_1'. Esse conjunto de backups não é o primeiro backup de banco de dados no conjunto de mídias; portanto, sua posição no conjunto de mídias é indicada com a opção FILE na cláusula WITH, FILE=9.This backup set is not the first database backup in the media set; therefore, its position in the media set is indicated by using the FILE option in the WITH clause, FILE=9.

RESTORE DATABASE MyDatabase
    FILE = 'MyDatabase_data_1',
    FILE = 'MyDatabase_data_2',
    FILEGROUP = 'new_customers'
    FROM MyDatabaseBackups
    WITH
      FILE = 9,
      NORECOVERY;
GO  
-- Restore the log backups
RESTORE LOG MyDatabase
    FROM MyDatabaseBackups
    WITH FILE = 10,
      NORECOVERY;
GO
RESTORE LOG MyDatabase
    FROM MyDatabaseBackups
    WITH FILE = 11,
      NORECOVERY;
GO
RESTORE LOG MyDatabase
    FROM MyDatabaseBackups
    WITH FILE = 12,
      NORECOVERY;
GO
--Recover the database
RESTORE DATABASE MyDatabase WITH RECOVERY;
GO

[Início dos exemplos][Top of examples]

J.J. Revertendo de um instantâneo do banco de dadosReverting from a database snapshot

O exemplo a seguir reverte um banco de dados para um instantâneo do banco de dados.The following example reverts a database to a database snapshot. O exemplo presume que existe apenas um instantâneo atualmente no banco de dados.The example assumes that only one snapshot currently exists on the database. Para obter um exemplo de como criar esse instantâneo do banco de dados, consulte Criar um instantâneo do banco de dados.For an example of how to create this database snapshot, see Create a Database Snapshot.

Observação

A reversão para um instantâneo descarta todos os catálogos de texto completo.Reverting to a snapshot drops all the full-text catalogs.

USE master;
RESTORE DATABASE AdventureWorks2012 FROM DATABASE_SNAPSHOT = 'AdventureWorks_dbss1800';
GO

Para obter mais informações, consulte Reverter um banco de dados para um instantâneo do banco de dados.For more information, see Revert a Database to a Database Snapshot.

[Início dos exemplos][Top of examples]

K.K. Restaurando do serviço de Armazenamento de Blobs do Microsoft AzureRestoring from the Microsoft Azure Blob storage service

Os três exemplos abaixo envolvem o uso do serviço de Armazenamento do Microsoft Azure.The three examples below involve the use of the Microsoft Azure storage service. O nome da Conta de armazenamento é mystorageaccount.The storage Account name is mystorageaccount. O contêiner para arquivos de dados é chamado myfirstcontainer.The container for data files is called myfirstcontainer. O contêiner para arquivos de backup é chamado mysecondcontainer.The container for backup files is called mysecondcontainer. Uma política de acesso armazenada foi criada com direitos de leitura, gravação, exclusão e lista para cada contêiner.A stored access policy has been created with read, write, delete, and list, rights for each container. As credenciais do SQL Server foram criadas usando Assinaturas de Acesso Compartilhado que estão associadas às Políticas de Acesso Armazenado.SQL Server credentials were created using Shared Access Signatures that are associated with the Stored Access Policies. Para obter informações específicas sobre o backup e a restauração do SQL Server com o Armazenamento de Blobs do Microsoft Azure, consulte Backup e restauração do SQL Server com o serviço de Armazenamento de Blobs do Microsoft Azure.For information specific to SQL Server backup and restore with the Microsoft Azure Blob storage, see SQL Server Backup and Restore with Microsoft Azure Blob Storage Service.

K1. Restaurar um backup de banco de dados completo do serviço de Armazenamento do Microsoft Azure Um backup de banco de dados completo, localizado em mysecondcontainer, de Sales será restaurado para myfirstcontainer.K1. Restore a full database backup from the Microsoft Azure storage service A full database backup, located at mysecondcontainer, of Sales will be restored to myfirstcontainer. Atualmente, o Sales não existe no servidor.Sales does not currently exist on the server.

RESTORE DATABASE Sales
  FROM URL = 'https://mystorageaccount.blob.core.windows.net/mysecondcontainer/Sales.bak'
  WITH MOVE 'Sales_Data1' to 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales_Data1.mdf',
  MOVE 'Sales_log' to 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales_log.ldf',
  STATS = 10;

K2. Restaurar um backup de banco de dados completo do serviço de Armazenamento do Microsoft Azure para o armazenamento local Um backup de banco de dados completo, localizado em mysecondcontainer, de Sales será restaurado para o armazenamento local.K2. Restore a full database backup from the Microsoft Azure storage service to local storage A full database backup, located at mysecondcontainer, of Sales will be restored to local storage. Atualmente, o Sales não existe no servidor.Sales does not currently exist on the server.

RESTORE DATABASE Sales
  FROM URL = 'https://mystorageaccount.blob.core.windows.net/mysecondcontainer/Sales.bak'
  WITH MOVE 'Sales_Data1' to 'H:\DATA\Sales_Data1.mdf',
  MOVE 'Sales_log' to 'O:\LOG\Sales_log.ldf',
  STATS = 10;

K3. Restaurar um backup de banco de dados completo do armazenamento local para o serviço de Armazenamento do Microsoft AzureK3. Restore a full database backup from local storage to the Microsoft Azure storage service

RESTORE DATABASE Sales
  FROM DISK = 'E:\BAK\Sales.bak'
  WITH MOVE 'Sales_Data1' to 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales_Data1.mdf',
  MOVE 'Sales_log' to 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales_log.ldf',
  STATS = 10;

[Início dos exemplos][Top of examples]

Mais informaçõesMore information

SQL ServerSQL Server * Instância gerenciada
do Banco de Dados SQL *
* SQL Database
managed instance *
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Instância gerenciada do Banco de Dados SQL do AzureAzure SQL Database managed instance

Esse comando permite restaurar um banco de dados inteiro de um backup de banco de dados completo (uma restauração completa) da conta do Armazenamento de Blobs do Azure.This command enables you to restore an entire database from a full database backup (a complete restore) from Azure Blob Storage account.

Para outros comandos RESTORE com suporte, consulte:For other supported RESTORE commands, see:

Importante

Para restaurar por meio de backups automáticos da instância gerenciada do Banco de Dados SQL do Azure, confira Restauração do Banco de Dados SQL.To restore from Azure SQL Database managed instance automatic backups, see SQL Database Restore.

SintaxeSyntax

--To Restore an Entire Database from a Full database backup (a Complete Restore):
RESTORE DATABASE { database_name | @database_name_var }
 FROM URL = { 'physical_device_name' | @physical_device_name_var } [ ,...n ]
[;]

ArgumentosArguments

DATABASEDATABASE

Especifica o banco de dados de destino.Specifies the target database.

FROM URLFROM URL

Especifica um ou mais dispositivos de backup colocados em URLs que serão usados para a operação de restauração.Specifies one or more backup devices placed on URLs that will be used for the restore operation. O formato da URL é usado para restaurar os backups do serviço de armazenamento do Microsoft Azure.The URL format is used for restoring backups from the Microsoft Azure storage service.

Importante

Para fazer uma restauração de vários dispositivos ao restaurar de uma URL, é necessário usar os tokens SAS (Assinatura de Acesso Compartilhado).In order to restore from multiple devices when restoring from URL, you must use Shared Access Signature (SAS) tokens. Para obter exemplos sobre como criar uma Assinatura de Acesso Compartilhado, consulte Backup do SQL Server em uma URL e Simplificando a criação de credenciais do SQL com tokens SAS (Assinatura de Acesso Compartilhado) no Armazenamento do Azure com o PowerShell.For examples creating a Shared Access Signature, see SQL Server Backup to URL and Simplifying creation of SQL Credentials with Shared Access Signature (SAS) tokens on Azure Storage with Powershell.

n É um espaço reservado que indica que até 64 dispositivos de backup podem ser especificados em uma lista separada por vírgulas.n Is a placeholder that indicates that up to 64 backup devices may be specified in a comma-separated list.

Comentários geraisGeneral Remarks

Como pré-requisito, você precisa criar uma credencial com o nome que corresponda à URL da conta de armazenamento de blobs, e colocar a Assinatura de Acesso Compartilhado como secreta.As a prerequisite, you need to create a credential with the name that matches the blob storage account url, and Shared Access Signature placed as secret. O comando RESTORE pesquisará as credenciais usando a URL de armazenamento de blobs para localizar as informações necessárias para ler o dispositivo de backup.RESTORE command will lookup credential using the blob storage url to find the information required to read the backup device.

A operação RESTORE é assíncrona: a restauração continua mesmo se a conexão de cliente é interrompida.RESTORE operation is asynchronous - the restore continues even if client connection breaks. Se sua conexão for interrompida, será possível marcar a exibição sys.dm_operation_status para o status de uma operação de restauração (bem como para o banco de dados CREATE e DROP).If your connection is dropped, you can check sys.dm_operation_status view for the status of a restore operation (as well as for CREATE and DROP database).

As opções de banco de dados a seguir são definidas/substituídas e não podem ser alteradas posteriormente:The following database options are set/overridden and cannot be changed later:

  • NEW_BROKER (se o agente não estiver habilitado no arquivo .bak)NEW_BROKER (if broker is not enabled in .bak file)
  • ENABLE_BROKER (se o agente não estiver habilitado no arquivo .bak)ENABLE_BROKER (if broker is not enabled in .bak file)
  • AUTO_CLOSE=OFF (se um banco de dados no arquivo .bak tiver AUTO_CLOSE=ON)AUTO_CLOSE=OFF (if a database in .bak file has AUTO_CLOSE=ON)
  • RECOVERY FULL (se um banco de dados no arquivo .bak tiver modo de recuperação SIMPLE ou BULK_LOGGED)RECOVERY FULL (if a database in .bak file has SIMPLE or BULK_LOGGED recovery mode)
  • O grupo de arquivos otimizado para memória será adicionado e o XTP, chamado, se ele não estiver no arquivo .bak de origem.Memory optimized filegroup is added and called XTP if it was not in the source .bak file. Qualquer grupo de arquivos otimizado para memória existente é renomeado para XTPAny existing memory optimized filegroup is renamed to XTP
  • As opções SINGLE_USER e RESTRICTED_USER são convertidas em MULTI_USERSINGLE_USER and RESTRICTED_USER options are converted to MULTI_USER

Limitações – instância gerenciada do Banco de Dados SQLLimitations - SQL Database managed instance

Estas limitações se aplicam:These limitations apply:

  • Arquivos .BAK que contêm vários conjuntos de backup não podem ser restaurados..BAK files containing multiple backup sets cannot be restored.
  • Arquivos .BAK que contêm vários arquivos de log não podem ser restaurados..BAK files containing multiple log files cannot be restored.
  • A restauração falhará se o .bak contiver dados FILESTREAM.Restore will fail if .bak contains FILESTREAM data.
  • Os backups que contêm banco de dados que têm objetos na memória ativos não podem ser restaurados em uma instância gerenciada de Uso Geral.Backups containing databases that have active In-memory objects cannot be restored to a General Purpose managed instance.
  • Os backups que contêm bancos de dados em modo somente leitura não podem ser restaurados no momento.Backups containing databases in read-only mode cannot currently be restored. Essa limitação será removida em breve.This limitation will be removed soon.

Para saber mais, confira instância gerenciadaFor more information, see managed instance

Restaurando um banco de dados criptografadoRestoring an Encrypted Database

Para restaurar um banco de dados criptografado, é necessário ter acesso ao certificado ou à chave assimétrica usada para criptografar o banco de dados.To restore a database that is encrypted, you must have access to the certificate or asymmetric key that was used to encrypt the database. Sem o certificado ou a chave assimétrica, o banco de dados não pode ser restaurado.Without the certificate or asymmetric key, the database cannot be restored. Como resultado, o certificado usado para criptografar a chave de criptografia do banco de dados deverá ser retido enquanto o backup for necessário.As a result, the certificate that is used to encrypt the database encryption key must be retained as long as the backup is needed. Para obter mais informações, consulte SQL Server Certificates and Asymmetric Keys.For more information, see SQL Server Certificates and Asymmetric Keys.

PermissõesPermissions

O usuário deve ter permissões CREATE DATABASE para poder executar RESTORE.The user must have CREATE DATABASE permissions to be able to execute RESTORE.

CREATE LOGIN mylogin WITH PASSWORD = 'Very Strong Pwd123!';
GRANT CREATE ANY DATABASE TO [mylogin];

As permissões RESTORE são concedidas a funções nas quais as informações de associação estão sempre disponíveis para o servidor.RESTORE permissions are given to roles in which membership information is always readily available to the server. Como a associação da função de banco de dados fixa pode ser verificada apenas quando o banco de dados está acessível e não danificado, o que nem sempre é o caso quando RESTORE é executado, os membros da função de banco de dados fixa db_owner não têm permissões RESTORE.Because fixed database role membership can be checked only when the database is accessible and undamaged, which is not always the case when RESTORE is executed, members of the db_owner fixed database role do not have RESTORE permissions.

ExemplosExamples

Os exemplos a seguir restauram um backup de banco de dados somente de cópia por meio da URL, incluindo a criação de uma credencial.The following examples restore a copy only database backup from URL, including the creation of a credential.

A.A. Restaurar o banco de dados de quatro dispositivos de backupRestore database from four backup devices


-- Create credential
CREATE CREDENTIAL [https://mybackups.blob.core.windows.net/wide-world-importers]
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
      SECRET = 'sv=2017-11-09&ss=bq&srt=sco&sp=rl&se=2022-06-19T22:41:07Z&st=2018-06-01T14:41:07Z&spr=https&sig=s7wddcf0w%3D';
GO
-- Restore database
RESTORE DATABASE WideWorldImportersStandard
FROM URL = N'https://mybackups.blob.core.windows.net/wide-world-importers/00-WideWorldImporters-Standard.bak',
URL = N'https://mybackups.blob.core.windows.net/wide-world-importers/01-WideWorldImporters-Standard.bak',
URL = N'https://mybackups.blob.core.windows.net/wide-world-importers/02-WideWorldImporters-Standard.bak',
URL = N'https://mybackups.blob.core.windows.net/wide-world-importers/03-WideWorldImporters-Standard.bak'

O erro a seguir é mostrado se o banco de dados já existe:The following error is shown if the database already exists:

Msg 1801, Level 16, State 1, Line 9
Database 'WideWorldImportersStandard' already exists. Choose a different database name.

B.B. Restaurar o banco de dados especificado por meio da variávelRestore database specified via variable

DECLARE @db_name sysname = 'WideWorldImportersStandard';
DECLARE @url nvarchar(400) = N'https://mybackups.blob.core.windows.net/wide-world-importers/WideWorldImporters-Standard.bak';

RESTORE DATABASE @db_name
FROM URL = @url

C.C. Acompanhar o progresso da instrução restoreTrack progress of restore statement

SELECT query = a.text, start_time, percent_complete,
    eta = dateadd(second,estimated_completion_time/1000, getdate())
FROM sys.dm_exec_requests r
    CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) a
WHERE r.command = 'RESTORE DATABASE'

Observação

Esta exibição provavelmente mostra duas solicitações de restore.This view will probably show two restore requests. Uma é a instrução RESTORE original enviada pelo cliente e a outra é a instrução RESTORE em segundo plano que está sendo executada, mesmo se houver falha na conexão do cliente.One is original RESTORE statement sent by the client, and the another one is background RESTORE statement that is executing even if the client connection fails.

SQL ServerSQL Server Instância gerenciada
do Banco de Dados SQL
SQL Database
managed instance
* Analytics
Platform System (PDW) *
* Analytics
Platform System (PDW) *

 

Sistema de plataforma de análiseAnalytics Platform System

Restaura um banco de dados de usuário do Parallel Data WarehouseParallel Data Warehouse por meio de um backup de banco de dados em um dispositivo do Parallel Data WarehouseParallel Data Warehouse.Restores a Parallel Data WarehouseParallel Data Warehouse user database from a database backup to a Parallel Data WarehouseParallel Data Warehouse appliance. O banco de dados é restaurado por meio de um backup que foi criado anteriormente pelo comando Parallel Data WarehouseParallel Data WarehouseBACKUP DATABASE - Analytics Platform System.The database is restored from a backup that was previously created by the Parallel Data WarehouseParallel Data Warehouse BACKUP DATABASE - Analytics Platform System command. Use as operações de backup e restauração para criar um plano de recuperação de desastre ou mover bancos de dados de um dispositivo para outro.Use the backup and restore operations to build a disaster recovery plan, or to move databases from one appliance to another.

Observação

A restauração do mestre inclui a restauração das informações de logon do dispositivo.Restoring master includes restoring appliance login information. Para restaurar um mestre, use a página Restaurar o banco de dados mestre da ferramenta Configuration Manager.To restore master, use the Restore the master Database page in the Configuration Manager tool. Um administrador com acesso ao nó de Controle pode executar essa operação.An administrator with access to the Control node can perform this operation. Para obter mais informações sobre backups de banco de dados do Parallel Data WarehouseParallel Data Warehouse, confira "Backup e restauração" no Documentação de produto do Parallel Data WarehouseParallel Data Warehouse product documentation.For more information about Parallel Data WarehouseParallel Data Warehouse database backups, see "Backup and Restore" in the Documentação de produto do Parallel Data WarehouseParallel Data Warehouse product documentation.

SintaxeSyntax


-- Restore the master database
-- Use the Configuration Manager tool.

Restore a full user database backup.
RESTORE DATABASE database_name
    FROM DISK = '\\UNC_path\full_backup_directory'
[;]

--Restore a full user database backup and then a differential backup.
RESTORE DATABASE database_name
    FROM DISK = '\\UNC_path\differential_backup_directory'
    WITH [ ( ] BASE = '\\UNC_path\full_backup_directory' [ ) ]
[;]

--Restore header information for a full or differential user database backup.
RESTORE HEADERONLY
    FROM DISK = '\\UNC_path\backup_directory'
[;]

ArgumentosArguments

RESTORE DATABASE database_name Especifica a restauração de um banco de dados de usuário para um banco de dados chamado database_name.RESTORE DATABASE database_name Specifies to restore a user database to a database called database_name. O banco de dados restaurado pode ter um nome diferente do banco de dados de origem que foi copiado em backup.The restored database can have a different name than the source database that was backed up. database_name ainda não pode existir como um banco de dados no dispositivo de destino.database_name cannot already exist as a database on the destination appliance. Para obter mais detalhes sobre nomes de banco de dados permitidos, consulte "Regras de nomenclatura de objeto" no Documentação de produto do Parallel Data WarehouseParallel Data Warehouse product documentation.For more details on permitted database names, see "Object Naming Rules" in the Documentação de produto do Parallel Data WarehouseParallel Data Warehouse product documentation.

A restauração de um banco de dados de usuário restaura um backup de banco de dados completo e, opcionalmente, em seguida, restaura um backup diferencial no dispositivo.Restoring a user database restores a full database backup and then optionally restores a differential backup to the appliance. Uma restauração de um banco de dados de usuário inclui a restauração de usuários e funções de banco de dados.A restore of a user database includes restoring database users, and database roles.

FROM DISK = '\\UNC_path\backup_directory' O caminho de rede e o diretório do qual o Parallel Data WarehouseParallel Data Warehouse restaurará os arquivos de backup.FROM DISK = '\\UNC_path\backup_directory' The network path and directory from which Parallel Data WarehouseParallel Data Warehouse will restore the backup files. Por exemplo, FROM DISK = '\\xxx.xxx.xxx.xxx\backups\2012\Monthly\08.2012.Mybackup'.For example, FROM DISK = '\\xxx.xxx.xxx.xxx\backups\2012\Monthly\08.2012.Mybackup'.

backup_directory Especifica o nome de um diretório que contém o backup completo ou diferencial.backup_directory Specifies the name of a directory that contains the full or differential backup. Por exemplo, você pode executar uma operação RESTORE HEADERONLY em um backup completo ou diferencial.For example, you can perform a RESTORE HEADERONLY operation on a full or differential backup.

full_backup_directory Especifica o nome de um diretório que contém o backup completo.full_backup_directory Specifies the name of a directory that contains the full backup.

differential_backup_directory Especifica o nome de um diretório que contém o backup diferencial.differential_backup_directory Specifies the name of the directory that contains the differential backup.

  • O caminho e o diretório de backup já devem existir e devem ser especificados como um caminho UNC (convenção de nomenclatura de universal) totalmente qualificado.The path and backup directory must already exist and must be specified as a fully qualified universal naming convention (UNC) path.
  • O caminho para o diretório de backup não pode ser um caminho local e não pode ser um local em um dos nós de dispositivo do Parallel Data WarehouseParallel Data Warehouse.The path to the backup directory cannot be a local path and it cannot be a location on any of the Parallel Data WarehouseParallel Data Warehouse appliance nodes.
  • O tamanho máximo do caminho UNC e do nome do diretório de backup é de 200 caracteres.The maximum length of the UNC path and backup directory name is 200 characters.
  • O servidor ou o host precisa ser especificado como um endereço IP.The server or host must be specified as an IP address.

RESTORE HEADERONLY Especifica para retornar somente as informações de cabeçalho para um backup de banco de dados de usuário.RESTORE HEADERONLY Specifies to return only the header information for one user database backup. Entre os outros campos, o cabeçalho inclui a descrição do texto do backup e o nome do backup.Among other fields, the header includes the text description of the backup, and the backup name. O nome do backup não precisa ter o mesmo nome do diretório que armazena os arquivos de backup.The backup name does not need to be the same as the name of the directory that stores the backup files.

Os resultados de RESTORE HEADERONLY seguem o mesmo padrão dos resultados de RESTORE HEADERONLY do SQL ServerSQL Server.RESTORE HEADERONLY results are patterned after the SQL ServerSQL Server RESTORE HEADERONLY results. O resultado tem mais de 50 colunas, e nem todas são usadas pelo Parallel Data WarehouseParallel Data Warehouse.The result has over 50 columns, which are not all used by Parallel Data WarehouseParallel Data Warehouse. Para obter uma descrição das colunas nos resultados de RESTORE HEADERONLY do SQL ServerSQL Server, consulte RESTORE HEADERONLY.For a description of the columns in the SQL ServerSQL Server RESTORE HEADERONLY results, see RESTORE HEADERONLY.

PermissõesPermissions

Requer a permissão CREATE ANY DATABASE.Requires the CREATE ANY DATABASE permission.

Exige uma conta do Windows que tem permissão para acessar e ler por meio do diretório de backup.Requires a Windows account that has permission to access and read from the backup directory. O nome de conta do Windows e a senha também precisam ser armazenados no Parallel Data WarehouseParallel Data Warehouse.You must also store the Windows account name and password in Parallel Data WarehouseParallel Data Warehouse.

Tratamento de errosError Handling

O comando RESTORE DATABASE resulta em erros nas seguintes condições:The RESTORE DATABASE command results in errors under the following conditions:

  • O nome do banco de dados a ser restaurado já existe no dispositivo de destino.The name of the database to restore already exists on the target appliance. Para evitar isso, escolha um nome exclusivo de banco de dados ou remova o banco de dados existente antes de executar a restauração.To avoid this, choose a unique database name, or drop the existing database before running the restore.
  • Há um conjunto inválido de arquivos de backup no diretório de backup.There is an invalid set of backup files in the backup directory.
  • As permissões de logon não são suficientes para restaurar um banco de dados.The login permissions are not sufficient to restore a database.
  • O Parallel Data WarehouseParallel Data Warehouse não tem as permissões corretas para o local de rede em que os arquivos de backup estão localizados.Parallel Data WarehouseParallel Data Warehouse does not have the correct permissions to the network location where the backup files are located.
  • O local de rede para o diretório de backup não existe ou não está disponível.The network location for the backup directory does not exist, or is not available.
  • Não há espaço em disco suficiente nos nós de Computação ou no nó de Controle.There is insufficient disk space on the Compute nodes or Control node. O Parallel Data WarehouseParallel Data Warehouse não confirma se o espaço em disco suficiente existe no dispositivo antes de iniciar a restauração.Parallel Data WarehouseParallel Data Warehouse does not confirm that sufficient disk space exists on the appliance before initiating the restore. Portanto, é possível gerar um erro de espaço em disco insuficiente ao executar a instrução RESTORE DATABASE.Therefore, it is possible to generate an out-of-disk-space error while running the RESTORE DATABASE statement. Quando não há espaço em disco suficiente, o Parallel Data WarehouseParallel Data Warehouse reverte a restauração.When insufficient disk space occurs, Parallel Data WarehouseParallel Data Warehouse rolls back the restore.
  • O dispositivo de destino no qual o banco de dados está sendo restaurado tem menos nós de Computação que o dispositivo de origem do qual o banco de dados foi copiado em backup.The target appliance to which the database is being restored has fewer Compute nodes than the source appliance from which the database was backed up.
  • Houve uma tentativa de restauração do banco de dados em uma transação.The database restore is attempted from within a transaction.

Comentários geraisGeneral Remarks

Parallel Data WarehouseParallel Data Warehouse acompanha o êxito das restaurações do banco de dados.tracks the success of database restores. Antes de restaurar um backup de banco de dados diferencial, Parallel Data WarehouseParallel Data Warehouse verifica se a restauração do banco de dados completo foi concluída com êxito.Before restoring a differential database backup, Parallel Data WarehouseParallel Data Warehouse verifies the full database restore finished successfully.

Após uma restauração, o banco de dados de usuário terá o nível de compatibilidade 120 do banco de dados.After a restore, the user database will have database compatibility level 120. Isso é verdadeiro para todos os bancos de dados, seja qual for seu nível de compatibilidade original.This is true for all databases regardless of their original compatibility level.

Restaurando para um dispositivo com um número maior de nós de ComputaçãoRestoring to an Appliance With a Larger Number of Compute Nodes

Execute DBCC SHRINKLOG (SQL Data Warehouse do Azure) depois de restaurar um banco de dados de um dispositivo menor até o maior, pois a redistribuição aumentará o log de transações.Run DBCC SHRINKLOG (Azure SQL Data Warehouse) after restoring a database from a smaller to larger appliance since redistribution will increase transaction log.

A restauração de um backup em um dispositivo com um número maior de nós de Computação aumenta o tamanho do banco de dados alocado proporcionalmente ao número de nós de Computação.Restoring a backup to an appliance with a larger number of Compute nodes grows the allocated database size in proportion to the number of Compute nodes.

Por exemplo, ao restaurar um banco de dados de 60 GB de um dispositivo de 2 nós (30 GB por nó) em um dispositivo de 6 nós, o Parallel Data WarehouseParallel Data Warehouse cria um banco de dados de 180 GB (6 nós com 30 GB por nó) no dispositivo de 6 nós.For example, when restoring a 60 GB database from a 2-node appliance (30 GB per node) to a 6-node appliance, Parallel Data WarehouseParallel Data Warehouse creates a 180 GB database (6 nodes with 30 GB per node) on the 6-node appliance. Inicialmente, o Parallel Data WarehouseParallel Data Warehouse restaura o banco de dados em dois nós para que isso corresponda à configuração de origem e, em seguida, redistribui os dados para todos os seis nós.Parallel Data WarehouseParallel Data Warehouse initially restores the database to 2 nodes to match the source configuration, and then redistributes the data to all 6 nodes.

Após a redistribuição, cada nó de Computação conterá menos dados reais e mais espaço livre do que cada nó de Computação no dispositivo de origem menor.After the redistribution each Compute node will contain less actual data and more free space than each Compute node on the smaller source appliance. Use o espaço adicional para adicionar mais dados ao banco de dados.Use the additional space to add more data to the database. Se o tamanho do banco de dados restaurado for maior do que o necessário, use ALTER DATABASE - PDW para reduzir os tamanhos de arquivos de banco de dados.If the restored database size is larger than you need, you can use ALTER DATABASE - PDW to shrink the database file sizes.

Limitações e RestriçõesLimitations and Restrictions

Para essas limitações e restrições, o dispositivo de origem é o dispositivo por meio do qual o backup do banco de dados foi criado e o dispositivo de destino é o dispositivo no qual o banco de dados será restaurado.For these limitations and restrictions, the source appliance is the appliance from which the database backup was created, and the target appliance is the appliance to which the database will be restored.

  • A restauração de um banco de dados não recompila as estatísticas automaticamente.Restoring a database does not automatically rebuild statistics.
  • Apenas uma instrução RESTORE DATABASE ou BACKUP DATABASE pode ser executada no dispositivo em determinado momento.Only one RESTORE DATABASE or BACKUP DATABASE statement can be running on the appliance at any given time. Se várias instruções de backup e restauração forem enviadas simultaneamente, o dispositivo as colocará em uma fila e as processará uma por vez.If multiple backup and restore statements are submitted concurrently, the appliance will put them into a queue and process them one at a time.
  • Apenas é possível restaurar um backup de banco de dados em um dispositivo de destino do Parallel Data WarehouseParallel Data Warehouse que tenha o mesmo número ou mais nós de Computação do que o dispositivo de origem.You can only restore a database backup to a Parallel Data WarehouseParallel Data Warehouse target appliance that has the same number or more Compute nodes than the source appliance. O dispositivo de destino não pode ter menos nós de Computação que o dispositivo de origem.The target appliance cannot have fewer Compute nodes than the source appliance.
  • Não é possível restaurar um backup que foi criado em um dispositivo que tem o hardware do SQL Server 2012 PDW em um dispositivo que tem o hardware do SQL Server 2008 R2.You cannot restore a backup that was created on an appliance that has SQL Server 2012 PDW hardware to an appliance that has SQL Server 2008 R2 hardware. Isso se aplica mesmo se o dispositivo foi adquirido originalmente com o hardware do SQL Server 2008 R2 PDW e agora executa o software do SQL Server 2012 PDW.This holds true even if the appliance was originally purchased with the SQL Server 2008 R2 PDW hardware and is now running SQL Server 2012 PDW software.

BloqueioLocking

Usa um bloqueio exclusivo no objeto DATABASE.Takes an exclusive lock on the DATABASE object.

ExemplosExamples

A.A. Exemplos simples de RESTORESimple RESTORE examples

O exemplo a seguir restaura um backup completo para o banco de dados do SalesInvoices2013.The following example restores a full backup to the SalesInvoices2013 database. Os arquivos de backup são armazenados no diretório \\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full.The backup files are stored in the \\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full directory. O banco de dados SalesInvoices2013 ainda não pode existir no dispositivo de destino ou esse comando falhará com um erro.The SalesInvoices2013 database cannot already exist on the target appliance or this command will fail with an error.

RESTORE DATABASE SalesInvoices2013
FROM DISK = '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full';

B.B. Restaurar um backup completo e diferencialRestore a full and differential backup

O exemplo a seguir restaura um backup completo e, em seguida, um backup diferencial para o banco de dados SalesInvoices2013The following example restores a full, and then a differential backup to the SalesInvoices2013 database

O backup completo do banco de dados é restaurado do backup completo que está armazenado no diretório '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full'.The full backup of the database is restored from the full backup which is stored in the '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full' directory. Se a restauração for concluída com êxito, o backup diferencial será restaurado para o banco de dados SalesInvoices2013. O backup diferencial é armazenado no diretório '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Diff'.If the restore completes successfully, the differential backup is restored to the SalesInvoices2013 database.The differential backup is stored in the '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Diff' directory.

RESTORE DATABASE SalesInvoices2013
    FROM DISK = '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Diff'
    WITH BASE = '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full'
[;]

C.C. Restaurando o cabeçalho do backupRestoring the backup header

Este exemplo restaura as informações de cabeçalho para o backup de banco de dados '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full'.This example restores the header information for database backup '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full' . Os resultados do comando em uma linha de informações para o backup de Invoices2013Full.The command results in one row of information for the Invoices2013Full backup.

RESTORE HEADERONLY
    FROM DISK = '\\xxx.xxx.xxx.xxx\backups\yearly\Invoices2013Full'
[;]

Use as informações de cabeçalho para verificar o conteúdo de um backup ou para garantir que o dispositivo de restauração de destino é compatível com o dispositivo de backup de origem antes de tentar restaurar o backup.You can use the header information to check the contents of a backup, or to make sure the target restoration appliance is compatible with the source backup appliance before attempting to restore the backup.

Consulte TambémSee Also