Stop-AzureSqlDatabaseCopy
Termina una relazione di copia continua.
Nota
I cmdlet a cui si fa riferimento in questa documentazione sono per la gestione delle risorse di Azure legacy che usano le API di Azure Service Manager (ASM). Questo modulo di PowerShell legacy non è consigliato durante la creazione di nuove risorse perché ASM è pianificato per il ritiro. Per altre informazioni, vedere Ritiro di Azure Service Manager.
Il modulo Az PowerShell è il modulo PowerShell consigliato per la gestione delle risorse di Azure Resource Manager (ARM) con PowerShell.
Sintassi
Stop-AzureSqlDatabaseCopy
-ServerName <String>
-DatabaseCopy <DatabaseCopy>
[-ForcedTermination]
[-Force]
[-Profile <AzureSMProfile>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Stop-AzureSqlDatabaseCopy
-ServerName <String>
-Database <Database>
[-PartnerServer <String>]
[-PartnerDatabase <String>]
[-ForcedTermination]
[-Force]
[-Profile <AzureSMProfile>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Stop-AzureSqlDatabaseCopy
-ServerName <String>
-DatabaseName <String>
[-PartnerServer <String>]
[-PartnerDatabase <String>]
[-ForcedTermination]
[-Force]
[-Profile <AzureSMProfile>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Descrizione
Il cmdlet Stop-AzureSqlDatabaseCopy termina una relazione di copia continua. Questo cmdlet arresta lo spostamento dei dati tra il database di origine e il database secondario o di destinazione e quindi modifica lo stato del database secondario in modo che sia un database online autonomo.
Esistono due modi per terminare una relazione di copia continua, la terminazione o la terminazione pianificata e la terminazione forzata con possibile perdita di dati. Nel server che ospita il database di origine è possibile eseguire questo cmdlet in modalità di terminazione o terminazione forzata. Nel server che ospita il database secondario è necessario usare la modalità di terminazione forzata.
Una terminazione pianificata attende fino a quando tutte le transazioni di cui è stato eseguito il commit nel database di origine, al momento dell'esecuzione del cmdlet, sono state replicate nel database secondario. La terminazione forzata non attende la replica di transazioni con commit in sospeso e può causare possibile perdita di dati nel database secondario.
Mentre lo stato della replica è IN SOSPESO, solo la terminazione forzata può terminare correttamente una relazione di copia continua. Se lo stato della replica è IN SOSPESO, la terminazione non forzata non è supportata.
Esempio
Esempio 1: Terminare una relazione di copia continua
PS C:\>Stop-AzureSqlDatabaseCopy -ServerName "lpqd0zbr8y" -DatabaseName "Orders" -PartnerServer "bk0b8kf658"
Questo comando termina la relazione di copia continua del database denominato Orders nel server denominato lpqd0zbr8y. Il server denominato bk0b8kf658 ospita il database secondario.
Esempio 2: Termina forzatamente una relazione di copia continua
PS C:\>$DatabaseCopy = Get-AzureSqlDatabaseCopy -ServerName "lpqd0zbr8y" -DatabaseName "Orders"
PS C:\> $DatabaseCopy | Stop-AzureSqlDatabaseCopy -ServerName "lpqd0zbr8y" -ForcedTermination
Il primo comando ottiene la relazione di copia del database per il database denominato Orders nel server denominato lpqd0zbr8y.
Il secondo comando termina forzatamente una relazione di copia continua dal server che ospita il database secondario.
Parametri
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Database
Specifica un oggetto che rappresenta il database SQL di Azure di origine. Questo cmdlet termina la relazione di copia continua del database specificato da questo parametro.
Tipo: | Database |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-DatabaseCopy
Specifica un oggetto che rappresenta un database. Questo cmdlet termina la relazione di copia continua del database specificato da questo parametro. Questo parametro accetta l'input della pipeline.
Tipo: | DatabaseCopy |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-DatabaseName
Specifica il nome di un database. Questo cmdlet termina la relazione di copia continua del database specificato da questo parametro.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Force
Forza l'esecuzione del comando senza chiedere conferma all'utente.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ForcedTermination
Indica che questo cmdlet causa la chiusura forzata della relazione di copia continua. La terminazione forzata può causare la perdita di dati. Per eseguire questo cmdlet in un server che ospita il database di destinazione, è necessario specificare questo parametro. Per eseguire questo cmdlet in un server che ospita il database di origine, se il database secondario non è disponibile, è necessario specificare questo parametro.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-PartnerDatabase
Specifica il nome del database secondario. Se si specifica un nome, deve corrispondere al nome del database di origine.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-PartnerServer
Specifica il nome del server che ospita il database di destinazione.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Profile
Specifica il profilo di Azure da cui viene letto questo cmdlet. Se non si specifica un profilo, questo cmdlet legge dal profilo predefinito locale.
Tipo: | AzureSMProfile |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ServerName
Specifica il nome del server in cui risiede il database di origine.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-WhatIf
Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.
Tipo: | SwitchParameter |
Alias: | wi |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
Microsoft.WindowsAzure.Commands.SqlDatabase.Model.DatabaseCopy
Microsoft.WindowsAzure.Commands.SqlDatabase.Services.Server.Database
Output
None
Note
Autenticazione: questo cmdlet richiede l'autenticazione basata su certificato. Per un esempio di come usare l'autenticazione basata su certificati per impostare la sottoscrizione corrente, vedere il cmdlet New-AzureSqlDatabaseServerContext .
Restrizioni: nel server che ospita il database secondario è supportata solo la terminazione forzata.
Impatto della terminazione nel database secondario precedente: dopo la terminazione, il database secondario diventa un database indipendente. Se il seeding è già stato completato nel database secondario, dopo la chiusura il database è aperto per l'accesso completo. Se il database di origine è un database di lettura/scrittura, anche il database secondario precedente diventa un database di lettura/scrittura.
Se il seeding è in corso, il seeding viene interrotto e il database secondario precedente non diventa mai visibile nel server che ospita il database secondario.
È possibile impostare il database di origine sulla modalità di sola lettura. Ciò garantisce che i database di origine e secondari vengano sincronizzati dopo la terminazione e che non venga eseguito il commit delle transazioni durante la terminazione. Al termine della terminazione, impostare di nuovo l'origine sulla modalità di lettura/scrittura. Facoltativamente, è anche possibile impostare il database secondario precedente sulla modalità di lettura/scrittura.
Monitoraggio: per verificare lo stato delle operazioni sia nell'origine che nella destinazione della relazione di copia continua, usare il cmdlet Get-AzureSqlDatabaseOperation .