Freigeben über


Restore-AzSqlDatabase

Stellt eine SQL-Datenbank wieder her.

Syntax

Restore-AzSqlDatabase
       [-FromPointInTimeBackup]
       -PointInTime <DateTime>
       -ResourceId <String>
       -ServerName <String>
       -TargetDatabaseName <String>
       [-Edition <String>]
       [-ServiceObjectiveName <String>]
       [-ElasticPoolName <String>]
       [-AsJob]
       [-LicenseType <String>]
       [-HAReplicaCount <Int32>]
       [-BackupStorageRedundancy <String>]
       [-ZoneRedundant]
       [-Tag <Hashtable>]
       [-AssignIdentity]
       [-EncryptionProtector <String>]
       [-UserAssignedIdentityId <String[]>]
       [-KeyList <String[]>]
       [-FederatedClientId <Guid>]
       [-EncryptionProtectorAutoRotation]
       [-ResourceGroupName] <String>
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-AzSqlDatabase
       [-FromPointInTimeBackup]
       -PointInTime <DateTime>
       -ResourceId <String>
       -ServerName <String>
       -TargetDatabaseName <String>
       -Edition <String>
       [-AsJob]
       -ComputeGeneration <String>
       -VCore <Int32>
       [-LicenseType <String>]
       [-HAReplicaCount <Int32>]
       [-BackupStorageRedundancy <String>]
       [-ZoneRedundant]
       [-Tag <Hashtable>]
       [-AssignIdentity]
       [-EncryptionProtector <String>]
       [-UserAssignedIdentityId <String[]>]
       [-KeyList <String[]>]
       [-FederatedClientId <Guid>]
       [-EncryptionProtectorAutoRotation]
       [-ResourceGroupName] <String>
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-AzSqlDatabase
       [-FromDeletedDatabaseBackup]
       [-PointInTime <DateTime>]
       -DeletionDate <DateTime>
       -ResourceId <String>
       -ServerName <String>
       -TargetDatabaseName <String>
       [-Edition <String>]
       [-ServiceObjectiveName <String>]
       [-ElasticPoolName <String>]
       [-AsJob]
       [-LicenseType <String>]
       [-HAReplicaCount <Int32>]
       [-BackupStorageRedundancy <String>]
       [-ZoneRedundant]
       [-Tag <Hashtable>]
       [-AssignIdentity]
       [-EncryptionProtector <String>]
       [-UserAssignedIdentityId <String[]>]
       [-KeyList <String[]>]
       [-FederatedClientId <Guid>]
       [-EncryptionProtectorAutoRotation]
       [-ResourceGroupName] <String>
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-AzSqlDatabase
       [-FromDeletedDatabaseBackup]
       [-PointInTime <DateTime>]
       -DeletionDate <DateTime>
       -ResourceId <String>
       -ServerName <String>
       -TargetDatabaseName <String>
       -Edition <String>
       [-AsJob]
       -ComputeGeneration <String>
       -VCore <Int32>
       [-LicenseType <String>]
       [-HAReplicaCount <Int32>]
       [-BackupStorageRedundancy <String>]
       [-ZoneRedundant]
       [-Tag <Hashtable>]
       [-AssignIdentity]
       [-EncryptionProtector <String>]
       [-UserAssignedIdentityId <String[]>]
       [-KeyList <String[]>]
       [-FederatedClientId <Guid>]
       [-EncryptionProtectorAutoRotation]
       [-ResourceGroupName] <String>
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-AzSqlDatabase
       [-FromGeoBackup]
       -ResourceId <String>
       -ServerName <String>
       -TargetDatabaseName <String>
       [-Edition <String>]
       [-ServiceObjectiveName <String>]
       [-ElasticPoolName <String>]
       [-AsJob]
       [-LicenseType <String>]
       [-HAReplicaCount <Int32>]
       [-BackupStorageRedundancy <String>]
       [-ZoneRedundant]
       [-Tag <Hashtable>]
       [-AssignIdentity]
       [-EncryptionProtector <String>]
       [-UserAssignedIdentityId <String[]>]
       [-KeyList <String[]>]
       [-FederatedClientId <Guid>]
       [-EncryptionProtectorAutoRotation]
       [-ResourceGroupName] <String>
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-AzSqlDatabase
       [-FromGeoBackup]
       -ResourceId <String>
       -ServerName <String>
       -TargetDatabaseName <String>
       -Edition <String>
       [-AsJob]
       -ComputeGeneration <String>
       -VCore <Int32>
       [-LicenseType <String>]
       [-HAReplicaCount <Int32>]
       [-BackupStorageRedundancy <String>]
       [-ZoneRedundant]
       [-Tag <Hashtable>]
       [-AssignIdentity]
       [-EncryptionProtector <String>]
       [-UserAssignedIdentityId <String[]>]
       [-KeyList <String[]>]
       [-FederatedClientId <Guid>]
       [-EncryptionProtectorAutoRotation]
       [-ResourceGroupName] <String>
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-AzSqlDatabase
       [-FromLongTermRetentionBackup]
       -ResourceId <String>
       -ServerName <String>
       -TargetDatabaseName <String>
       [-Edition <String>]
       [-ServiceObjectiveName <String>]
       [-ElasticPoolName <String>]
       [-AsJob]
       [-LicenseType <String>]
       [-HAReplicaCount <Int32>]
       [-BackupStorageRedundancy <String>]
       [-ZoneRedundant]
       [-Tag <Hashtable>]
       [-AssignIdentity]
       [-EncryptionProtector <String>]
       [-UserAssignedIdentityId <String[]>]
       [-KeyList <String[]>]
       [-FederatedClientId <Guid>]
       [-EncryptionProtectorAutoRotation]
       [-ResourceGroupName] <String>
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Restore-AzSqlDatabase
       [-FromLongTermRetentionBackup]
       -ResourceId <String>
       -ServerName <String>
       -TargetDatabaseName <String>
       -Edition <String>
       [-AsJob]
       -ComputeGeneration <String>
       -VCore <Int32>
       [-LicenseType <String>]
       [-HAReplicaCount <Int32>]
       [-BackupStorageRedundancy <String>]
       [-ZoneRedundant]
       [-Tag <Hashtable>]
       [-AssignIdentity]
       [-EncryptionProtector <String>]
       [-UserAssignedIdentityId <String[]>]
       [-KeyList <String[]>]
       [-FederatedClientId <Guid>]
       [-EncryptionProtectorAutoRotation]
       [-ResourceGroupName] <String>
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Beschreibung

Das Cmdlet Restore-AzSqlDatabase stellt eine SQL-Datenbank aus einer georedundanten Sicherung, einer Sicherung einer gelöschten Datenbank, einer langfristigen Aufbewahrungssicherung oder einem Zeitpunkt in einer Livedatenbank wieder her. Die wiederhergestellte Datenbank wird als neue Datenbank erstellt. Sie können eine elastische SQL-Datenbank erstellen, indem Sie den ElasticPoolName-Parameter auf einen vorhandenen elastischen Pool festlegen. Sie können auch eine abonnementübergreifende Wiederherstellung für eine Datawarehouse-Datenbank durchführen.

Beispiele

Beispiel 1: Wiederherstellen einer Datenbank von einem Zeitpunkt an

$Database = Get-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01"
Restore-AzSqlDatabase -FromPointInTimeBackup -PointInTime UTCDateTime -ResourceGroupName $Database.ResourceGroupName -ServerName $Database.ServerName -TargetDatabaseName "RestoredDatabase" -ResourceId $Database.ResourceID -Edition "Standard" -ServiceObjectiveName "S2"

Der erste Befehl ruft die SQL-Datenbank mit dem Namen "Database01" ab und speichert sie dann in der variablen $Database. Mit dem zweiten Befehl wird die Datenbank in $Database aus der angegebenen Point-in-Time-Sicherung in der Datenbank namens "RestoredDatabase" wiederhergestellt.

Beispiel 2: Wiederherstellen einer Datenbank von einem Zeitpunkt zu einem elastischen Pool

$Database = Get-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01"
Restore-AzSqlDatabase -FromPointInTimeBackup -PointInTime UTCDateTime -ResourceGroupName $Database.ResourceGroupName -ServerName $Database.ServerName -TargetDatabaseName "RestoredDatabase" -ResourceId $Database.ResourceID -ElasticPoolName "ElasticPool01"

Der erste Befehl ruft die SQL-Datenbank mit dem Namen "Database01" ab und speichert sie dann in der variablen $Database. Mit dem zweiten Befehl wird die Datenbank in $Database aus der angegebenen Point-in-Time-Sicherung in der SQL-Datenbank namens "RestoredDatabase" im elastischen Pool namens elasticpool01 wiederhergestellt.

Beispiel 3: Wiederherstellen einer gelöschten Datenbank

$DeletedDatabase = Get-AzSqlDeletedDatabaseBackup -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01"
Restore-AzSqlDatabase -FromDeletedDatabaseBackup -DeletionDate $DeletedDatabase.DeletionDate -ResourceGroupName $DeletedDatabase.ResourceGroupName -ServerName $DeletedDatabase.ServerName -TargetDatabaseName "RestoredDatabase" -ResourceId $DeletedDatabase.ResourceID -Edition "Standard" -ServiceObjectiveName "S2" -PointInTime UTCDateTime

Der erste Befehl ruft die gelöschte Datenbanksicherung ab, die Sie mithilfe von Get-AzSqlDeletedDatabaseBackup wiederherstellen möchten. Der zweite Befehl startet die Wiederherstellung aus der gelöschten Datenbanksicherung mithilfe des Cmdlets Restore-AzSqlDatabase . Wenn der Parameter "-PointInTime" nicht angegeben ist, wird die Datenbank zur Löschzeit wiederhergestellt.

Beispiel 4: Wiederherstellen einer gelöschten Datenbank in einem elastischen Pool

$DeletedDatabase = Get-AzSqlDeletedDatabaseBackup -ResourceGroupName $resourceGroupName -ServerName $sqlServerName -DatabaseName 'DatabaseToRestore'
Restore-AzSqlDatabase -FromDeletedDatabaseBackup -DeletionDate $DeletedDatabase.DeletionDate -ResourceGroupName $DeletedDatabase.ResourceGroupName -ServerName $DeletedDatabase.ServerName -TargetDatabaseName "RestoredDatabase" -ResourceId $DeletedDatabase.ResourceID -ElasticPoolName "elasticpool01" -PointInTime UTCDateTime

Der erste Befehl ruft die gelöschte Datenbanksicherung ab, die Sie mithilfe von Get-AzSqlDeletedDatabaseBackup wiederherstellen möchten. Der zweite Befehl startet die Wiederherstellung aus der gelöschten Datenbanksicherung mithilfe von Restore-AzSqlDatabase. Wenn der Parameter "-PointInTime" nicht angegeben ist, wird die Datenbank zur Löschzeit wiederhergestellt.

Beispiel 5: Geo-Wiederherstellen einer Datenbank

$GeoBackup = Get-AzSqlDatabaseGeoBackup -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01"
Restore-AzSqlDatabase -FromGeoBackup -ResourceGroupName "TargetResourceGroup" -ServerName "TargetServer" -TargetDatabaseName "RestoredDatabase" -ResourceId $GeoBackup.ResourceID -Edition "Standard" -ServiceObjectiveName "S2"

Der erste Befehl ruft die georedundante Sicherung für die Datenbank namens "Database01" ab und speichert sie dann in der variablen $GeoBackup. Mit dem zweiten Befehl wird die Sicherung in $GeoBackup in der SQL-Datenbank namens "RestoredDatabase" wiederhergestellt.

Parameter

-AsJob

Cmdlet im Hintergrund ausführen

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-AssignIdentity

Generieren und Zuweisen einer Microsoft Entra-Identität für diese Datenbank für die Verwendung mit Schlüsselverwaltungsdiensten wie Azure KeyVault.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-BackupStorageRedundancy

Die Sicherungsspeicherredundanz, die zum Speichern von Sicherungen für die SQL-Datenbank verwendet wird. Optionen sind: Lokal, Zone, Geo und GeoZone.

Typ:String
Zulässige Werte:Local, Zone, Geo, GeoZone
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ComputeGeneration

Die Berechnungsgenerierung, die der wiederhergestellten Datenbank zugewiesen werden soll

Typ:String
Aliase:Family
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DefaultProfile

Anmeldeinformationen, Konto, Mandant und Abonnement für die Kommunikation mit Azure

Typ:IAzureContextContainer
Aliase:AzContext, AzureRmContext, AzureCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DeletionDate

Gibt das Löschdatum als DateTime-Objekt an. Verwenden Sie zum Abrufen eines DateTime-Objekts das Cmdlet "Get-Date".

Typ:DateTime
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Edition

Gibt die Edition der SQL-Datenbank an. Zulässige Werte für diesen Parameter:

  • Keine
  • Basic
  • Standard
  • Premium
  • DataWarehouse
  • Kostenlos
  • Stretch
  • Universell
  • BusinessCritical
Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ElasticPoolName

Gibt den Namen des elastischen Pools an, in dem die SQL-Datenbank abgelegt werden soll.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-EncryptionProtector

Der Verschlüsselungsschutzschlüssel für SQL-Datenbank.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-EncryptionProtectorAutoRotation

Der Status der automatischen Drehung des AKV-Schlüssels

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-FederatedClientId

Die Partnerclient-ID für die SQL-Datenbank. Sie wird für das mandantenübergreifende CMK-Szenario verwendet.

Typ:Nullable<T>[Guid]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-FromDeletedDatabaseBackup

Gibt an, dass dieses Cmdlet eine Datenbank aus einer Sicherung einer gelöschten SQL-Datenbank wiederherstellen kann. Sie können das Cmdlet Get-AzSqlDeletedDatabaseBackup verwenden, um die Sicherung einer gelöschten SQL-Datenbank abzurufen.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-FromGeoBackup

Gibt an, dass dieses Cmdlet eine SQL-Datenbank aus einer georedundanten Sicherung wiederherstellen kann. Sie können das Cmdlet Get-AzSqlDatabaseGeoBackup verwenden, um eine georedundante Sicherung zu erhalten.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-FromLongTermRetentionBackup

Gibt an, dass dieses Cmdlet eine SQL-Datenbank aus einer langfristigen Aufbewahrungssicherung wiederherstellen kann.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-FromPointInTimeBackup

Gibt an, dass dieses Cmdlet eine SQL-Datenbank aus einer Point-in-Time-Sicherung wiederhergestellt.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-HAReplicaCount

Die HA-Replikatanzahl, die zum Speichern von Sicherungen für die SQL-Datenbank verwendet wird.

Typ:Int32
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-KeyList

Die Liste der AKV-Schlüssel für die SQL-Datenbank.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-LicenseType

Der Lizenztyp für die Azure SQL-Datenbank.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-PointInTime

Gibt den Zeitpunkt als DateTime-Objekt an, in dem Sie die SQL-Datenbank wiederherstellen möchten. Verwenden Sie zum Abrufen eines DateTime-Objekts das Cmdlet "Get-Date". Verwenden Sie diesen Parameter zusammen mit dem Parameter FromPointInTimeBackup .

Typ:DateTime
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ResourceGroupName

Gibt den Namen der Ressourcengruppe an, der dieses Cmdlet die SQL-Datenbank zuweist.

Typ:String
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ResourceId

Gibt die ID der wiederherzustellenden Ressource an.

Typ:String
Aliase:Id
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ServerName

Gibt den Namen des SQL-Datenbankservers an.

Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ServiceObjectiveName

Gibt den Namen des Dienstziels an.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Tag

Die Tags, die der Azure Sql-Datenbank zugeordnet werden sollen

Typ:Hashtable
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-TargetDatabaseName

Gibt den Namen der Datenbank an, auf die wiederhergestellt werden soll.

Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-UserAssignedIdentityId

Die Liste der vom Benutzer zugewiesenen Identitäten für die SQL-Datenbank.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-VCore

Die Vcore-Nummern der wiederhergestellten Azure SQL-Datenbank.

Typ:Int32
Aliase:Capacity
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ZoneRedundant

Die Zonenredundanz, die der Azure SQL-Datenbank zugeordnet werden soll. Diese Eigenschaft ist nur für Hyperscale Edition-Datenbanken festgelegt.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

DateTime

String

Ausgaben

AzureSqlDatabaseModel