Partager via


Restore-SqlDatabase

Restaure une base de données à partir d’enregistrements de sauvegarde ou de journal des transactions.

Syntaxe

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

L’applet de commande Restore-SqlDatabase effectue des opérations de restauration sur une base de données SQL Server. Cela inclut les restaurations complètes de bases de données, les restaurations de journaux des transactions et les restaurations de fichiers de base de données.

Cette applet de commande est modélisée après la classe Microsoft.SqlServer.Management.Smo.Restore. Les paramètres de cette applet de commande correspondent généralement aux propriétés de l’objet Smo.Restore.

Exemples

Exemple 1 : Restaurer une base de données à partir d’un fichier de sauvegarde sur un partage réseau

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

Cette commande restaure l'MainDB de base de données complète à partir du fichier \\mainserver\databasebackup\MainDB.bak sur l’instance de serveur Computer\Instance.

Exemple 2 : Restaurer un journal des transactions de base de données

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

Cette commande restaure le journal des transactions pour la base de données MainDB à partir du fichier \\mainserver\databasebackup\MainDB.trn sur l’instance de serveur Computer\Instance.

Exemple 3 : Restaurer une base de données et demander un mot de passe

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

Cette commande restaure la base de données complète MainDB à partir du fichier \\mainserver\databasebackup\MainDB.bak sur l’instance de serveur Computer\Instance, à l’aide de la connexion SQL sa. Cette commande vous invite à entrer un mot de passe pour terminer l’authentification.

Exemple 4 : Restaurer un journal des transactions avec l’option NORECOVERY

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

Cette commande restaure le journal des transactions de la base de données MainDB avec l’option NORECOVERY du fichier \\mainserver\databasebackup\MainDB.trn sur l’instance de serveur Computer\Instance.

Exemple 5 : Restaurer les enregistrements du journal des transactions jusqu’à un point dans le temps

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

Cette commande restaure le journal des transactions de la base de données MainDB jusqu’à la date passée au paramètre ToPointInTime, 21 septembre 2017 11:11.

Exemple 6 : Restaurer une base de données et déplacer les fichiers journaux et les données

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)

Cet exemple restaure la base de données complète MainDB sur l’instance de serveur Computer\Instanceet déplace les données et les fichiers journaux. Pour chaque fichier déplacé, l’exemple construit une instance de la classe Microsoft.SqlServer.Management.Smo.RelocateFile. Chaque constructeur prend deux arguments, le nom logique du fichier et l’emplacement physique où le fichier sera placé sur le serveur cible. Les objets RelocateFile sont passés au paramètre RelocateFile de l’applet de commande Restore-SqlDatabase.

Exemple 7 : Restaurer une base de données à partir d’une bande

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

Cet exemple restaure la base de données MainDB à partir de l’appareil à bandes nommé \\.\tape0 sur l’instance de serveur Computer\Instance. Pour représenter cet appareil, l’exemple construit une instance de la classe Microsoft.Sqlserver.Management.Smo.BackupDeviceItem. Le constructeur prend deux arguments, le nom de l’appareil de sauvegarde et le type de l’appareil de sauvegarde. Cet objet BackupDeviceItem est ensuite passé au paramètre BackupDevice de l’applet de commande Restore-SqlDatabase.

Exemple 8 : Restaurer une base de données à partir du service Stockage Blob Azure

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

Cette commande restaure la base de données complète MainDB à partir du fichier sur le service Stockage Blob Windows Azure vers l’instance de serveur Computer\Instance.

Exemple 9 : Sauvegarder une base de données sur SQL2016 et restaurer sur SQL2017 à l’aide de -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

La première commande effectue une sauvegarde de la base de données AdventureWorks sur SQL2016 instance s’exécutant sur la machine MYSERVER. La sauvegarde est enregistrée sous C :\BAK2.

Le même fichier de sauvegarde est utilisé dans la deuxième applet de commande pour restaurer la base de données sur une instance de SQL2017 s’exécutant sur le même ordinateur (MYSERVER). Notez que, sans le commutateur -AutoRelocate, l’applet de commande aurait échoué, car les fichiers physiques où ils étaient différents, comme indiqué dans les deux tableaux ci-dessus (en outre, les fichiers auraient probablement été utilisés par SQL2016 et éventuellement pas accessibles par SQL2017). Le -AutoRelocate a permis à l’utilisateur d’éviter d’avoir à utiliser explicitement l'-RelocationFile, l’argument auquel il est assez fastidieux de générer.

Remarque : il existe une hypothèse selon laquelle l’instance SQL2016 et l’instance SQL2017 ont accès au dossier C :\BAK2.

Paramètres

-AccessToken

Jeton d’accès utilisé pour s’authentifier auprès de SQL Server, comme alternative à l’authentification utilisateur/mot de passe ou Windows.

Cela peut être utilisé, par exemple, pour se connecter à SQL Azure DB et SQL Azure Managed Instance à l’aide d’un Service Principal ou d’un Managed Identity.

Le paramètre à utiliser peut être une chaîne représentant le jeton ou un objet PSAccessToken tel qu’il est retourné en exécutant Get-AzAccessToken -ResourceUrl https://database.windows.net.

Ce paramètre est nouveau dans v22 du module.

Type:PSObject
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AutoRelocateFile

Lorsque ce commutateur est spécifié, l’applet de commande s’occupe de déplacer automatiquement tous les fichiers logiques dans la sauvegarde, sauf si ce fichier logique est spécifié avec le RelocateFile. Le serveur DefaultFile et DefaultLog sont utilisés pour déplacer les fichiers.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-BackupDevice

Spécifie les appareils où les sauvegardes sont stockées. Ce paramètre ne peut pas être utilisé avec le paramètre BackupFile. Utilisez ce paramètre si vous sauvegardez sur un appareil à bande.

Type:BackupDeviceItem[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-BackupFile

Spécifie l’emplacement ou les emplacements où sont stockés les fichiers de sauvegarde. Ce paramètre est facultatif. S’il n’est pas spécifié, l’emplacement de sauvegarde par défaut du serveur est recherché pour le nom <database name>.trn pour les restaurations de journaux, ou <database name>.bak pour tous les autres types de restaurations. Ce paramètre ne peut pas être utilisé avec le paramètre BackupDevice. Si vous sauvegardez sur le service Stockage Blob Windows Azure (URL), ce paramètre ou le paramètre BackupDevice doit être spécifié.

Type:String[]
Position:2
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-BlockSize

Spécifie la taille de bloc physique, en octets, pour la sauvegarde. Les tailles prises en charge sont 512, 1024, 2048, 4096, 8192, 16384, 32768 et 65536 (64 Ko) octets. La valeur par défaut est 65536 pour les appareils à bande et 512 pour tous les autres appareils.

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-BufferCount

Spécifie le nombre total de mémoires tampons d’E/S à utiliser pour l’opération de sauvegarde. Vous pouvez spécifier n’importe quel entier positif. S’il y a un espace d’adressage virtuel insuffisant dans le processus de Sqlservr.exe pour les mémoires tampons, vous recevrez une erreur de mémoire insuffisante.

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Checksum

Indique qu’une valeur de somme de contrôle est calculée pendant l’opération de restauration.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ClearSuspectPageTable

Indique que la table de pages suspecte est supprimée après l’opération de restauration.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ConnectionTimeout

Spécifie le nombre de secondes à attendre pour une connexion serveur avant un échec de délai d’expiration. La valeur de délai d’expiration doit être un entier compris entre 0 et 65534. Si 0 est spécifié, les tentatives de connexion ne expirent pas.

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ContinueAfterError

Indique que l’opération se poursuit lorsqu’une erreur de somme de contrôle se produit. Si elle n’est pas définie, l’opération échoue après une erreur de somme de contrôle.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Credential

Spécifie un objet PSCredential qui contient les informations d’identification d’une connexion SQL Server qui a l’autorisation d’effectuer cette opération.

Type:PSCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Database

Spécifie le nom de la base de données à restaurer. Cela ne peut pas être utilisé avec le paramètre DatabaseObject. Lorsque ce paramètre est utilisé, les paramètres Path, InputObjectou Paramètres ServerInstance doivent également être spécifiés.

Type:String
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DatabaseFile

Spécifie les fichiers de base de données ciblés par l’opération de restauration. Cela est utilisé uniquement lorsque le paramètre RestoreAction est défini sur Files. Lorsque le paramètre RestoreAction est défini sur Files, le paramètre DatabaseFileGroups ou DatabaseFiles doit également être spécifié.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DatabaseFileGroup

Spécifie les groupes de fichiers de base de données ciblés par l’opération de restauration. Cela est utilisé uniquement lorsque le paramètre RestoreAction est défini sur File. Lorsque le paramètre RestoreAction est défini sur Files, le paramètre DatabaseFileGroups ou DatabaseFiles doit également être spécifié.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DatabaseObject

Spécifie un objet de base de données pour l’opération de restauration.

Type:Database
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Encrypt

Type de chiffrement à utiliser lors de la connexion à SQL Server.

Cette valeur est mappée à la propriété EncryptSqlConnectionEncryptOption sur l’objet SqlConnection du pilote Microsoft.Data.SqlClient.

Dans la version 22 du module, la valeur par défaut est Optional (pour la compatibilité avec v21). Dans la version 23+ du module, la valeur par défaut est « Obligatoire », ce qui peut créer une modification cassant pour les scripts existants.

Ce paramètre est nouveau dans v22 du module.

Type:String
Valeurs acceptées:Mandatory, Optional, Strict
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-FileNumber

Spécifie le numéro d’index utilisé pour identifier le jeu de sauvegarde ciblé sur le support de sauvegarde.

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-HostNameInCertificate

Nom d’hôte à utiliser pour valider le certificat TLS/SSL SQL Server. Vous devez passer ce paramètre si votre instance SQL Server est activée pour Forcer le chiffrement et que vous souhaitez vous connecter à une instance à l’aide du nom d’hôte/shortname. Si ce paramètre est omis, le passage du nom de domaine complet (FQDN) à -ServerInstance est nécessaire pour se connecter à une instance SQL Server activée pour Forcer le chiffrement.

Ce paramètre est nouveau dans v22 du module.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-InputObject

Spécifie l’objet serveur de l’instance SQL Server où la restauration se produit.

Type:Server[]
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-KeepReplication

Indique que la configuration de réplication est conservée. Si elle n’est pas définie, la configuration de la réplication est ignorée par l’opération de restauration.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-MaxTransferSize

Spécifie le nombre maximal d’octets à transférer entre le support de sauvegarde et l’instance SQL Server. Les valeurs possibles sont des multiples de 65536 octets (64 Ko), jusqu’à 4194304 octets (4 Mo).

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-MediaName

Spécifie le nom qui identifie un jeu de supports.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-NoRecovery

Indique que la base de données est restaurée dans l’état de restauration. Une opération de restauration ne se produit pas et des sauvegardes supplémentaires peuvent être restaurées.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-NoRewind

Indique qu’un lecteur de bande est laissé ouvert à la position de fin lorsque la restauration est terminée. S’il n’est pas défini, la bande est rewound une fois l’opération terminée. Cela ne s’applique pas aux restaurations de disque.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Offset

Spécifie les adresses de page à restaurer. Cela est utilisé uniquement lorsque RestoreAction est défini sur OnlinePage.

Type:Int64[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Partial

Indique que l’opération de restauration est une restauration partielle.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PassThru

Indique que cette applet de commande génère l’objet Smo.Backup utilisé pour effectuer l’opération de restauration.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Path

Spécifie le chemin d’accès de l’instance SQL Server sur laquelle exécuter l’opération de restauration. Ce paramètre est facultatif. S’il n’est pas spécifié, l’emplacement de travail actuel est utilisé.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ProgressAction

Détermine comment PowerShell répond aux mises à jour de progression générées par un script, une applet de commande ou un fournisseur, telles que les barres de progression générées par l’applet de commande Write-Progress. L’applet de commande Write-Progress crée des barres de progression qui affichent l’état d’une commande.

Type:ActionPreference
Alias:proga
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-RelocateFile

Spécifie une liste d’objets de fichier Smo.Relocate. Chaque objet se compose d’un nom de fichier de sauvegarde logique et d’un emplacement de système de fichiers physique. La restauration déplace la base de données restaurée dans l’emplacement physique spécifié sur le serveur cible.

Type:RelocateFile[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ReplaceDatabase

Indique qu’une nouvelle image de la base de données est créée. Cela remplace toute base de données existante portant le même nom. Si elle n’est pas définie, l’opération de restauration échoue lorsqu’une base de données portant ce nom existe déjà sur le serveur.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Restart

Indique que cette applet de commande reprend une opération de restauration partiellement terminée. S’il n’est pas défini, l’applet de commande redémarre une opération de restauration interrompue au début du jeu de sauvegarde.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-RestoreAction

Spécifie le type d’opération de restauration qui est effectué. Les valeurs valides sont les suivantes :

  • Base de données. La base de données est restaurée.
  • Fichiers. Un ou plusieurs fichiers de données sont restaurés. Le paramètre DatabaseFile ou DatabaseFileGroup doit être spécifié.
  • OnlinePage. Une page de données est restaurée en ligne afin que la base de données reste disponible pour les utilisateurs.
  • OnlineFiles. Les fichiers de données sont restaurés en ligne afin que la base de données reste disponible pour les utilisateurs. Le paramètre DatabaseFile ou DatabaseFileGroup doit être spécifié.
  • Rapport. Le journal de translaction est restauré.
Type:RestoreActionType
Valeurs acceptées:Database, Files, OnlinePage, OnlineFiles, Log
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-RestrictedUser

Indique que l’accès à la base de données restaurée est limité au rôle de base de données fixe db_owner et aux rôles serveur fixe dbcreator et sysadmin.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Script

Indique que cette applet de commande génère un script Transact-SQL qui effectue l’opération de restauration.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ServerInstance

Spécifie le nom d’une instance SQL Server. Cette instance de serveur devient la cible de l’opération de restauration.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-SqlCredential

Spécifie un objet d’informations d’identification SQL Server qui stocke les informations d’authentification. Si vous sauvegardez sur le service de stockage d’objets blob, vous devez spécifier ce paramètre. Les informations d’authentification stockées incluent le nom du compte de stockage et les valeurs de clé d’accès associées. Ne spécifiez pas ce paramètre pour le disque ou la bande.

Type:PSObject
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StandbyFile

Spécifie le nom d’un fichier d’annulation utilisé dans le cadre de la stratégie d’imagerie d’une instance SQL Server.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StopAtMarkAfterDate

Spécifie la date à utiliser avec le nom de marque spécifié par le paramètre StopAtMarkName pour déterminer le point d’arrêt de l’opération de récupération.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StopAtMarkName

Spécifie la transaction marquée à laquelle arrêter l’opération de récupération. Cela est utilisé avec StopAtMarkAfterDate pour déterminer le point d’arrêt de l’opération de récupération. Les données récupérées incluent la transaction qui contient la marque. Si la valeur StopAtMarkAfterDate n’est pas définie, la récupération s’arrête à la première marque avec le nom spécifié.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StopBeforeMarkAfterDate

Spécifie la date à utiliser avec StopBeforeMarkName pour déterminer le point d’arrêt de l’opération de récupération.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StopBeforeMarkName

Spécifie la transaction marquée avant laquelle arrêter l’opération de récupération. Cela est utilisé avec StopBeforeMarkAfterDate pour déterminer le point d’arrêt de l’opération de récupération.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ToPointInTime

Spécifie le point de terminaison pour la restauration des journaux de base de données. Cela s’applique uniquement lorsque RestoreAction est défini sur Log.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-TrustServerCertificate

Indique si le canal sera chiffré lors du contournement de la marche à pied de la chaîne de certificats pour valider l’approbation.

Dans la version 22 du module, la valeur par défaut est $true (pour la compatibilité avec v21). Dans v23+ du module, la valeur par défaut est « $false », ce qui peut créer une modification cassant pour les scripts existants.

Ce paramètre est nouveau dans v22 du module.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UnloadTapeAfter

Indique que le périphérique de bande est rewound et déchargé lorsque l’opération est terminée. S’il n’est pas défini, aucune tentative n’est effectuée pour rembobiner et décharger le support de bande. Cela ne s’applique pas aux sauvegardes de disque.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

Microsoft.SqlServer.Management.Smo.Database

Microsoft.SqlServer.Management.Smo.Server[]

Spécifie un SMO. Objet serveur qui décrit l’instance SQL Server sur laquelle l’opération de restauration se produit.

System.String[]