Restore-AzSqlDatabase

Ripristina un database SQL.

Sintassi

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>]

Descrizione

Il cmdlet Restore-AzSqlDatabase ripristina un database SQL da un backup con ridondanza geografica, un backup di un database eliminato, un backup di conservazione a lungo termine o un punto nel tempo in un database attivo. Il database ripristinato viene creato come nuovo database. È possibile creare un database SQL elastico impostando il parametro ElasticPoolName su un pool elastico esistente. È anche possibile eseguire un ripristino tra sottoscrizioni per un database datawarehouse.

Esempio

Esempio 1: Ripristinare un database da un punto nel tempo

$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"

Il primo comando ottiene il database SQL denominato Database01 e quindi lo archivia nella variabile $Database. Il secondo comando ripristina il database in $Database dal backup temporizzato specificato al database denominato RestoredDatabase.

Esempio 2: Ripristinare un database da un punto nel tempo a un pool elastico

$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"

Il primo comando ottiene il database SQL denominato Database01 e quindi lo archivia nella variabile $Database. Il secondo comando ripristina il database in $Database dal backup temporizzato specificato al database SQL denominato RestoredDatabase nel pool elastico denominato elasticpool01.

Esempio 3: Ripristinare un database eliminato

$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

Il primo comando ottiene il backup del database eliminato che si vuole ripristinare usando Get-AzSqlDeletedDatabaseBackup. Il secondo comando avvia il ripristino dal backup del database eliminato usando il cmdlet Restore-AzSqlDatabase . Se il parametro -PointInTime non è specificato, il database verrà ripristinato all'ora di eliminazione.

Esempio 4: Ripristinare un database eliminato in un pool elastico

$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

Il primo comando ottiene il backup del database eliminato che si vuole ripristinare usando Get-AzSqlDeletedDatabaseBackup. Il secondo comando avvia il ripristino dal backup del database eliminato usando Restore-AzSqlDatabase. Se il parametro -PointInTime non è specificato, il database verrà ripristinato all'ora di eliminazione.

Esempio 5: Ripristino geografico di un database

$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"

Il primo comando ottiene il backup con ridondanza geografica per il database denominato Database01 e quindi lo archivia nella variabile $GeoBackup. Il secondo comando ripristina il backup in $GeoBackup nel database SQL denominato RestoredDatabase.

Parametri

-AsJob

Eseguire il cmdlet in background

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AssignIdentity

Generare e assegnare un'identità di Microsoft Entra per questo database da usare con i servizi di gestione delle chiavi come Azure KeyVault.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BackupStorageRedundancy

Ridondanza dell'archiviazione di backup usata per archiviare i backup per il database SQL. Le opzioni sono: Local, Zone, Geo e GeoZone.

Type:String
Accepted values:Local, Zone, Geo, GeoZone
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputeGeneration

Generazione di calcolo da assegnare al database ripristinato

Type:String
Aliases:Family
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Credenziali, account, tenant e sottoscrizione usati per la comunicazione con Azure

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DeletionDate

Specifica la data di eliminazione come oggetto DateTime . Per ottenere un oggetto DateTime , usare il cmdlet Get-Date.

Type:DateTime
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Edition

Specifica l'edizione del database SQL. I valori validi per questo parametro sono:

  • None
  • Basic
  • Standard
  • Premium
  • Datawarehouse
  • Libero
  • Estendi
  • Utilizzo generico
  • BusinessCritical
Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ElasticPoolName

Specifica il nome del pool elastico in cui inserire il database SQL.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EncryptionProtector

Chiave di protezione della crittografia per database SQL.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EncryptionProtectorAutoRotation

Stato rotazione automatica della chiave AKV

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-FederatedClientId

ID client federato per il database SQL. Viene usato per lo scenario cmk tra tenant.

Type:Nullable<T>[Guid]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FromDeletedDatabaseBackup

Indica che questo cmdlet ripristina un database da un backup di un database SQL eliminato. È possibile usare il cmdlet Get-AzSqlDeletedDatabaseBackup per ottenere il backup di un database SQL eliminato.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-FromGeoBackup

Indica che questo cmdlet ripristina un database SQL da un backup con ridondanza geografica. È possibile usare il cmdlet Get-AzSqlDatabaseGeoBackup per ottenere un backup con ridondanza geografica.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-FromLongTermRetentionBackup

Indica che questo cmdlet ripristina un database SQL da un backup di conservazione a lungo termine.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-FromPointInTimeBackup

Indica che questo cmdlet ripristina un database SQL da un backup temporizzato.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-HAReplicaCount

Conteggio repliche a disponibilità elevata usato per archiviare i backup per il database SQL.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-KeyList

Elenco di chiavi AKV per il database SQL.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LicenseType

Tipo di licenza per il database Sql di Azure.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PointInTime

Specifica il punto nel tempo, come oggetto DateTime , in cui si vuole ripristinare il database SQL. Per ottenere un oggetto DateTime , usare il cmdlet Get-Date . Usare questo parametro insieme al parametro FromPointInTimeBackup .

Type:DateTime
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

Specifica il nome del gruppo di risorse a cui questo cmdlet assegna il database SQL.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ResourceId

Specifica l'ID della risorsa da ripristinare.

Type:String
Aliases:Id
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ServerName

Specifica il nome del server di database SQL.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ServiceObjectiveName

Specifica il nome dell'obiettivo di servizio.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Tag

Tag da associare al database SQL di Azure

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TargetDatabaseName

Specifica il nome del database in cui eseguire il ripristino.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-UserAssignedIdentityId

Elenco di identità assegnate dall'utente per il database SQL.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VCore

Numeri Vcore del database SQL di Azure ripristinato.

Type:Int32
Aliases:Capacity
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ZoneRedundant

Ridondanza della zona da associare al database SQL di Azure. Questa proprietà è impostata solo per i database dell'edizione Hyperscale.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

DateTime

String

Output

AzureSqlDatabaseModel