Compartilhar via


Restore-SqlDatabase

Restaura um banco de dados de um backup ou registros de log de transações.

Sintaxe

Restore-SqlDatabase
       [-ClearSuspectPageTable]
       [-KeepReplication]
       [-Partial]
       [-ReplaceDatabase]
       [-RestrictedUser]
       [-Offset <Int64[]>]
       [-RelocateFile <RelocateFile[]>]
       [-AutoRelocateFile]
       [-FileNumber <Int32>]
       [-RestoreAction <RestoreActionType>]
       [-StandbyFile <String>]
       [-StopAtMarkAfterDate <String>]
       [-StopAtMarkName <String>]
       [-StopBeforeMarkAfterDate <String>]
       [-StopBeforeMarkName <String>]
       [-ToPointInTime <String>]
       [-Database] <String>
       [-Path <String[]>]
       [[-BackupFile] <String[]>]
       [-SqlCredential <PSObject>]
       [-BackupDevice <BackupDeviceItem[]>]
       [-PassThru]
       [-Checksum]
       [-ContinueAfterError]
       [-NoRewind]
       [-Restart]
       [-UnloadTapeAfter]
       [-NoRecovery]
       [-DatabaseFile <String[]>]
       [-DatabaseFileGroup <String[]>]
       [-BlockSize <Int32>]
       [-BufferCount <Int32>]
       [-MaxTransferSize <Int32>]
       [-MediaName <String>]
       [-Script]
       [-AccessToken <PSObject>]
       [-TrustServerCertificate]
       [-HostNameInCertificate <String>]
       [-Encrypt <String>]
       [-ProgressAction <ActionPreference>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-SqlDatabase
       [-ClearSuspectPageTable]
       [-KeepReplication]
       [-Partial]
       [-ReplaceDatabase]
       [-RestrictedUser]
       [-Offset <Int64[]>]
       [-RelocateFile <RelocateFile[]>]
       [-AutoRelocateFile]
       [-FileNumber <Int32>]
       [-RestoreAction <RestoreActionType>]
       [-StandbyFile <String>]
       [-StopAtMarkAfterDate <String>]
       [-StopAtMarkName <String>]
       [-StopBeforeMarkAfterDate <String>]
       [-StopBeforeMarkName <String>]
       [-ToPointInTime <String>]
       [-Database] <String>
       -ServerInstance <String[]>
       [-Credential <PSCredential>]
       [-ConnectionTimeout <Int32>]
       [[-BackupFile] <String[]>]
       [-SqlCredential <PSObject>]
       [-BackupDevice <BackupDeviceItem[]>]
       [-PassThru]
       [-Checksum]
       [-ContinueAfterError]
       [-NoRewind]
       [-Restart]
       [-UnloadTapeAfter]
       [-NoRecovery]
       [-DatabaseFile <String[]>]
       [-DatabaseFileGroup <String[]>]
       [-BlockSize <Int32>]
       [-BufferCount <Int32>]
       [-MaxTransferSize <Int32>]
       [-MediaName <String>]
       [-Script]
       [-AccessToken <PSObject>]
       [-TrustServerCertificate]
       [-HostNameInCertificate <String>]
       [-Encrypt <String>]
       [-ProgressAction <ActionPreference>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-SqlDatabase
       [-ClearSuspectPageTable]
       [-KeepReplication]
       [-Partial]
       [-ReplaceDatabase]
       [-RestrictedUser]
       [-Offset <Int64[]>]
       [-RelocateFile <RelocateFile[]>]
       [-AutoRelocateFile]
       [-FileNumber <Int32>]
       [-RestoreAction <RestoreActionType>]
       [-StandbyFile <String>]
       [-StopAtMarkAfterDate <String>]
       [-StopAtMarkName <String>]
       [-StopBeforeMarkAfterDate <String>]
       [-StopBeforeMarkName <String>]
       [-ToPointInTime <String>]
       [-Database] <String>
       -InputObject <Server[]>
       [[-BackupFile] <String[]>]
       [-SqlCredential <PSObject>]
       [-BackupDevice <BackupDeviceItem[]>]
       [-PassThru]
       [-Checksum]
       [-ContinueAfterError]
       [-NoRewind]
       [-Restart]
       [-UnloadTapeAfter]
       [-NoRecovery]
       [-DatabaseFile <String[]>]
       [-DatabaseFileGroup <String[]>]
       [-BlockSize <Int32>]
       [-BufferCount <Int32>]
       [-MaxTransferSize <Int32>]
       [-MediaName <String>]
       [-Script]
       [-AccessToken <PSObject>]
       [-TrustServerCertificate]
       [-HostNameInCertificate <String>]
       [-Encrypt <String>]
       [-ProgressAction <ActionPreference>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-SqlDatabase
       [-ClearSuspectPageTable]
       [-KeepReplication]
       [-Partial]
       [-ReplaceDatabase]
       [-RestrictedUser]
       [-Offset <Int64[]>]
       [-RelocateFile <RelocateFile[]>]
       [-AutoRelocateFile]
       [-FileNumber <Int32>]
       [-RestoreAction <RestoreActionType>]
       [-StandbyFile <String>]
       [-StopAtMarkAfterDate <String>]
       [-StopAtMarkName <String>]
       [-StopBeforeMarkAfterDate <String>]
       [-StopBeforeMarkName <String>]
       [-ToPointInTime <String>]
       [-DatabaseObject] <Database>
       [[-BackupFile] <String[]>]
       [-SqlCredential <PSObject>]
       [-BackupDevice <BackupDeviceItem[]>]
       [-PassThru]
       [-Checksum]
       [-ContinueAfterError]
       [-NoRewind]
       [-Restart]
       [-UnloadTapeAfter]
       [-NoRecovery]
       [-DatabaseFile <String[]>]
       [-DatabaseFileGroup <String[]>]
       [-BlockSize <Int32>]
       [-BufferCount <Int32>]
       [-MaxTransferSize <Int32>]
       [-MediaName <String>]
       [-Script]
       [-AccessToken <PSObject>]
       [-TrustServerCertificate]
       [-HostNameInCertificate <String>]
       [-Encrypt <String>]
       [-ProgressAction <ActionPreference>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

O cmdlet Restore-SqlDatabase executa operações de restauração em um banco de dados do SQL Server. Isso inclui restaurações completas de banco de dados, restaurações de log de transações e restaurações de arquivo de banco de dados.

Esse cmdlet é modelado após a classe Microsoft.SqlServer.Management.Smo.Restore. Os parâmetros neste cmdlet geralmente correspondem às propriedades no objeto Smo.Restore.

Exemplos

Exemplo 1: restaurar um banco de dados de um arquivo de backup em um compartilhamento de rede

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.bak"

Esse comando restaura o banco de dados completo MainDB do \\mainserver\databasebackup\MainDB.bak de arquivo para a instância do servidor Computer\Instance.

Exemplo 2: restaurar um log de transações de banco de dados

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RestoreAction Log

Esse comando restaura o log de transações do banco de dados MainDB do \\mainserver\databasebackup\MainDB.trn de arquivo para a instância do servidor Computer\Instance.

Exemplo 3: restaurar um banco de dados e solicitar uma senha

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.bak" -Credential (Get-Credential "sa")

Esse comando restaura o banco de dados completo MainDB do \\mainserver\databasebackup\MainDB.bak de arquivo para a instância do servidor Computer\Instanceusando o logon do SQL sa. Esse comando solicitará uma senha para concluir a autenticação.

Exemplo 4: restaurar um log de transações com a opção NORECOVERY

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RestoreAction Log -NoRecovery

Esse comando restaura o log de transações do banco de dados MainDB com a opção NORECOVERY do \\mainserver\databasebackup\MainDB.trn de arquivo para a instância do servidor Computer\Instance.

Exemplo 5: restaurar registros de log de transações até um ponto no tempo

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RestoreAction Log -ToPointInTime "Sep 21, 2017 11:11 PM"

Este comando restaura o log de transações do banco de dados até a data passada para o parâmetro ToPointInTime, 21 de set de 2017 23:11.

Exemplo 6: restaurar um banco de dados e realocar os arquivos de dados e log

PS C:\> $RelocateData = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile("MainDB_Data", "c:\MySQLServer\MainDB.mdf")
PS C:\> $RelocateLog = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile("MainDB_Log", "c:\MySQLServer\MainDB.ldf")
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.trn" -RelocateFile @($RelocateData,$RelocateLog)

Este exemplo restaura o banco de dados completo MainDB para a instância do servidor Computer\Instancee realoca os arquivos de dados e de log. Para cada arquivo movido, o exemplo constrói uma instância da classe Microsoft.SqlServer.Management.Smo.RelocateFile. Cada construtor usa dois argumentos, o nome lógico do arquivo e o local físico em que o arquivo será colocado no servidor de destino. Os objetos RelocateFile são passados para o parâmetro RelocateFile do cmdlet Restore-SqlDatabase .

Exemplo 7: restaurar um banco de dados da fita

PS C:\> $TapeDevice = New-Object Microsoft.Sqlserver.Management.Smo.BackupDeviceItem("\\.\tape0", "Tape")
PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupDevice $TapeDevice

Este exemplo restaura o banco de dados MainDB do dispositivo de fita chamado \\.\tape0 para a instância do servidor Computer\Instance. Para representar esse dispositivo, o exemplo constrói uma instância da classe Microsoft.Sqlserver.Management.Smo.BackupDeviceItem. O construtor usa dois argumentos, o nome do dispositivo de backup e o tipo do dispositivo de backup. Esse objeto BackupDeviceItem é passado para o parâmetro BackupDevice do cmdlet Restore-SqlDatabase.

Exemplo 8: restaurar um banco de dados do serviço de Armazenamento de Blobs do Azure

PS C:\> Restore-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "https://mystorageaccountname.blob.core.windows.net/container/MyDB.bak" -SqlCredential "mySqlCredential"

Esse comando restaura o banco de dados completo MainDB do arquivo no serviço de Armazenamento de Blobs do Windows Azure para a instância do servidor Computer\Instance.

Exemplo 9: Fazer backup de um banco de dados em SQL2016 e restaurar em SQL2017 usando -AutoRelocateFile

PS C:\> Get-SqlDatabase -ServerInstance MYSERVER\SQL2016 -Database AdventureWorks | Backup-SqlDatabase -BackupFile 'C:\BAK2\AdventureWorks.bak'
PS C:\> $restore = Restore-SqlDatabase -ServerInstance MYSERVER\SQL2017 -Database AdventureWorks2016 -BackupFile 'C:\BAK2\AdventureWorks.bak' -AutoRelocateFile -PassThru
PS C:\> $db.RelocateFiles

LogicalFileName     PhysicalFileName
---------------     ----------------
AdventureWorks_Data C:\Program Files\Microsoft SQL Server\MSSQL14.SQL2017\MSSQL\DATA\AdventureWorks_Data.mdf
AdventureWorks_Log  C:\Program Files\Microsoft SQL Server\MSSQL14.SQL2017\MSSQL\DATA\AdventureWorks_Log.ldf

# You can see that the original PhysicalFileNames were indeed differet by running the followiong query:
PS C:\> Invoke-Sqlcmd -ServerInstance MYSERVER\SQL2016 -Query "RESTORE FILELISTONLY FROM  DISK = N'C:\BAK2\AdventureWorks.bak' WITH NOUNLOAD" | Select -Property LogicalName,PhysicalName

LogicalName         PhysicalName
-----------         ------------
AdventureWorks_Data C:\Program Files\Microsoft SQL Server\MSSQL13.SQL2016\MSSQL\DATA\AdventureWorks_Data.mdf
AdventureWorks_Log  C:\Program Files\Microsoft SQL Server\MSSQL13.SQL2016\MSSQL\DATA\AdventureWorks_Log.ldf

O primeiro comando faz um backup do banco de dados AdventureWorks em SQL2016 instância em execução no computador MYSERVER. O backup é salvo em C:\BAK2 .

O mesmo arquivo de backup é usado no segundo cmdlet para restaurar o banco de dados em uma instância de SQL2017 em execução no mesmo computador (MYSERVER). Observe que, sem a opção -AutoRelocate, o cmdlet teria falhado porque arquivos físicos em que diferentes, conforme mostrado nas duas tabelas acima (além disso, provavelmente os arquivos teriam sido usados por SQL2016 e possivelmente não acessíveis por SQL2017). O -AutoRelocate permitiu que o usuário evitasse ter que usar explicitamente o -RelocationFile, o argumento ao qual é bastante entediante criar.

Observação: há uma suposição de que a instância SQL2016 e SQL2017 instância têm acesso à pasta C:\BAK2.

Parâmetros

-AccessToken

O token de acesso usado para autenticar no SQL Server, como uma alternativa ao usuário/senha ou à Autenticação do Windows.

Isso pode ser usado, por exemplo, para se conectar a SQL Azure DB e SQL Azure Managed Instance usando um Service Principal ou um Managed Identity.

O parâmetro a ser usado pode ser uma cadeia de caracteres que representa o token ou um objeto PSAccessToken conforme retornado executando Get-AzAccessToken -ResourceUrl https://database.windows.net.

Esse parâmetro é novo na v22 do módulo.

Tipo:PSObject
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-AutoRelocateFile

Quando essa opção for especificada, o cmdlet cuidará da realocação automática de todos os arquivos lógicos no backup, a menos que esse arquivo lógico seja especificado com o RelocatFile. O DefaultFile e o DefaultLog do servidor são usados para realocar os arquivos.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-BackupDevice

Especifica os dispositivos em que os backups são armazenados. Esse parâmetro não pode ser usado com o parâmetro BackupFile. Use esse parâmetro se você estiver fazendo backup em um dispositivo de fita.

Tipo:BackupDeviceItem[]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-BackupFile

Especifica o local ou os locais onde os arquivos de backup são armazenados. Esse parâmetro é opcional. Se não for especificado, o local de backup padrão do servidor será pesquisado para o nome <database name>.trn para restaurações de log ou <database name>.bak para todos os outros tipos de restaurações. Esse parâmetro não pode ser usado com o parâmetro BackupDevice. Se você estiver fazendo backup na URL (Serviço de Armazenamento de Blobs) do Windows Azure, esse parâmetro ou o parâmetro BackupDevice deverão ser especificados.

Tipo:String[]
Cargo:2
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-BlockSize

Especifica o tamanho do bloco físico, em bytes, para o backup. Os tamanhos com suporte são 512, 1024, 2048, 4096, 8192, 16384, 32768 e 65536 (64 KB). O padrão é 65536 para dispositivos de fita e 512 para todos os outros dispositivos.

Tipo:Int32
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-BufferCount

Especifica o número total de buffers de E/S a serem usados para a operação de backup. Você pode especificar qualquer inteiro positivo. Se houver espaço de endereço virtual insuficiente no processo de Sqlservr.exe para os buffers, você receberá um erro de memória insuficiente.

Tipo:Int32
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Checksum

Indica que um valor de soma de verificação é calculado durante a operação de restauração.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ClearSuspectPageTable

Indica que a tabela de página suspeita é excluída após a operação de restauração.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Confirm

Solicita a confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ConnectionTimeout

Especifica o número de segundos para aguardar uma conexão de servidor antes de uma falha no tempo limite. O valor de tempo limite deve ser um inteiro entre 0 e 65534. Se 0 for especificado, as tentativas de conexão não têm tempo limite.

Tipo:Int32
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ContinueAfterError

Indica que a operação continua quando ocorre um erro de soma de verificação. Se não estiver definida, a operação falhará após um erro de soma de verificação.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Credential

Especifica um objeto PSCredential que contém as credenciais de um logon do SQL Server que tem permissão para executar essa operação.

Tipo:PSCredential
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Database

Especifica o nome do banco de dados a ser restaurado. Isso não pode ser usado com o parâmetro DatabaseObject. Quando esse parâmetro é usado, os parâmetros Path, InputObjectou ServerInstance também devem ser especificados.

Tipo:String
Cargo:1
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-DatabaseFile

Especifica os arquivos de banco de dados direcionados pela operação de restauração. Isso só é usado quando o parâmetro RestoreAction é definido como Arquivos. Quando o parâmetro RestoreAction é definido como Arquivos, o parâmetro DatabaseFileGroups ou DatabaseFiles também deve ser especificado.

Tipo:String[]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-DatabaseFileGroup

Especifica os grupos de arquivos de banco de dados direcionados pela operação de restauração. Isso só é usado quando o parâmetro RestoreAction é definido como Arquivo. Quando o parâmetro RestoreAction é definido como Arquivos, o parâmetro DatabaseFileGroups ou DatabaseFiles também deve ser especificado.

Tipo:String[]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-DatabaseObject

Especifica um objeto de banco de dados para a operação de restauração.

Tipo:Database
Cargo:1
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-Encrypt

O tipo de criptografia a ser usado ao se conectar ao SQL Server.

Esse valor é mapeado para a propriedade EncryptSqlConnectionEncryptOption no objeto SqlConnection do driver Microsoft.Data.SqlClient.

Na v22 do módulo, o padrão é Optional (para compatibilidade com v21). Na v23+ do módulo, o valor padrão será 'Obrigatório', o que pode criar uma alteração significativa para scripts existentes.

Esse parâmetro é novo na v22 do módulo.

Tipo:String
Valores aceitos:Mandatory, Optional, Strict
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-FileNumber

Especifica o número de índice usado para identificar o conjunto de backup direcionado no meio de backup.

Tipo:Int32
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-HostNameInCertificate

O nome do host a ser usado na validação do certificado TLS/SSL do SQL Server. Você deve passar esse parâmetro se a instância do SQL Server estiver habilitada para o Force Encryption e quiser se conectar a uma instância usando nome de host/nome curto. Se esse parâmetro for omitido, passar o FQDN (Nome de Domínio Totalmente Qualificado) para -ServerInstance será necessário para se conectar a uma instância do SQL Server habilitada para o Force Encryption.

Esse parâmetro é novo na v22 do módulo.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-InputObject

Especifica o objeto de servidor da instância do SQL Server em que a restauração ocorre.

Tipo:Server[]
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-KeepReplication

Indica que a configuração de replicação é preservada. Se não for definido, a configuração de replicação será ignorada pela operação de restauração.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-MaxTransferSize

Especifica o número máximo de bytes a serem transferidos entre a mídia de backup e a instância do SQL Server. Os valores possíveis são múltiplos de 65536 bytes (64 KB), até 4194304 bytes (4 MB).

Tipo:Int32
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-MediaName

Especifica o nome que identifica um conjunto de mídias.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-NoRecovery

Indica que o banco de dados é restaurado no estado de restauração. Uma operação de reversão não ocorre e backups adicionais podem ser restaurados.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-NoRewind

Indica que uma unidade de fita é deixada aberta na posição final quando a restauração é concluída. Se não estiver definido, a fita será relançada após a conclusão da operação. Isso não se aplica a restaurações de disco.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Offset

Especifica os endereços de página a serem restaurados. Isso só é usado quando RestoreAction é definido como OnlinePage.

Tipo:Int64[]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Partial

Indica que a operação de restauração é uma restauração parcial.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-PassThru

Indica que esse cmdlet gera o objeto Smo.Backup usado para executar a operação de restauração.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Path

Especifica o caminho da instância do SQL Server na qual executar a operação de restauração. Esse parâmetro é opcional. Se não for especificado, o local de trabalho atual será usado.

Tipo:String[]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ProgressAction

Determina como o PowerShell responde às atualizações de progresso geradas por um script, cmdlet ou provedor, como as barras de progresso geradas pelo cmdlet Write-Progress. O cmdlet Write-Progress cria barras de progresso que mostram o status de um comando.

Tipo:ActionPreference
Aliases:proga
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-RelocateFile

Especifica uma lista de objetos de arquivo Smo.Relocate. Cada objeto consiste em um nome de arquivo de backup lógico e um local do sistema de arquivos físico. A restauração move o banco de dados restaurado para o local físico especificado no servidor de destino.

Tipo:RelocateFile[]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ReplaceDatabase

Indica que uma nova imagem do banco de dados foi criada. Isso substitui qualquer banco de dados existente com o mesmo nome. Se não estiver definida, a operação de restauração falhará quando um banco de dados com esse nome já existir no servidor.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Restart

Indica que esse cmdlet retoma uma operação de restauração parcialmente concluída. Se não estiver definido, o cmdlet reiniciará uma operação de restauração interrompida no início do conjunto de backup.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-RestoreAction

Especifica o tipo de operação de restauração executada. Os valores válidos são:

  • Base de dados. O banco de dados é restaurado.
  • Limas. Um ou mais arquivos de dados são restaurados. O parâmetro DatabaseFile ou DatabaseFileGroup deve ser especificado.
  • OnlinePage. Uma página de dados é restaurada online para que o banco de dados permaneça disponível para os usuários.
  • OnlineFiles. Os arquivos de dados são restaurados online para que o banco de dados permaneça disponível para os usuários. O parâmetro DatabaseFile ou DatabaseFileGroup deve ser especificado.
  • Tora. O log de translação é restaurado.
Tipo:RestoreActionType
Valores aceitos:Database, Files, OnlinePage, OnlineFiles, Log
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-RestrictedUser

Indica que o acesso ao banco de dados restaurado é restrito à função de banco de dados fixa db_owner e às funções de servidor fixas dbcreator e sysadmin.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Script

Indica que esse cmdlet gera um script Transact-SQL que executa a operação de restauração.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ServerInstance

Especifica o nome de uma instância do SQL Server. Essa instância de servidor torna-se o destino da operação de restauração.

Tipo:String[]
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-SqlCredential

Especifica um objeto de credencial do SQL Server que armazena informações de autenticação. Se estiver fazendo backup no serviço de Armazenamento de Blobs, especifique esse parâmetro. As informações de autenticação armazenadas incluem o nome da conta de armazenamento e os valores de chave de acesso associados. Não especifique esse parâmetro para disco ou fita.

Tipo:PSObject
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-StandbyFile

Especifica o nome de um arquivo desfazer usado como parte da estratégia de geração de imagens para uma instância do SQL Server.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-StopAtMarkAfterDate

Especifica a data a ser usada com o nome da marca especificado pelo parâmetro StopAtMarkName para determinar o ponto de interrupção da operação de recuperação.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-StopAtMarkName

Especifica a transação marcada na qual interromper a operação de recuperação. Isso é usado com StopAtMarkAfterDate para determinar o ponto de interrupção da operação de recuperação. Os dados recuperados incluem a transação que contém a marca. Se o StopAtMarkAfterDate valor não estiver definido, a recuperação será interrompida na primeira marca com o nome especificado.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-StopBeforeMarkAfterDate

Especifica a data a ser usada com StopBeforeMarkName para determinar o ponto de interrupção da operação de recuperação.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-StopBeforeMarkName

Especifica a transação marcada antes da qual interromper a operação de recuperação. Isso é usado com StopBeforeMarkAfterDate para determinar o ponto de interrupção da operação de recuperação.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ToPointInTime

Especifica o ponto de extremidade para restauração de log de banco de dados. Isso só se aplica quando RestoreAction é definido como Log.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-TrustServerCertificate

Indica se o canal será criptografado ao ignorar a cadeia de certificados para validar a confiança.

Na v22 do módulo, o padrão é $true (para compatibilidade com v21). Na v23+ do módulo, o valor padrão será "$false", o que pode criar uma alteração significativa para scripts existentes.

Esse parâmetro é novo na v22 do módulo.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-UnloadTapeAfter

Indica que o dispositivo de fita é relançado e descarregado quando a operação é concluída. Se não estiver definido, nenhuma tentativa será feita para retroceder e descarregar o meio de fita. Isso não se aplica a backups de disco.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

Microsoft.SqlServer.Management.Smo.Database

Microsoft.SqlServer.Management.Smo.Server[]

Especifica um SMO. Objeto server que descreve a instância do SQL Server na qual a operação de restauração ocorre.

System.String[]