New-SqlAvailabilityReplica
Crea una replica di disponibilità.
Sintassi
ByPath (impostazione predefinita).
New-SqlAvailabilityReplica
[-Name] <String>
[[-Path] <String>]
-AvailabilityMode <AvailabilityReplicaAvailabilityMode>
-FailoverMode <AvailabilityReplicaFailoverMode>
-EndpointUrl <String>
[-SessionTimeout <Int32>]
[-ConnectionModeInPrimaryRole <AvailabilityReplicaConnectionModeInPrimaryRole>]
[-ConnectionModeInSecondaryRole <AvailabilityReplicaConnectionModeInSecondaryRole>]
[-BackupPriority <Int32>]
[-ReadOnlyRoutingList <String[]>]
[-ReadonlyRoutingConnectionUrl <String>]
[-SeedingMode <AvailabilityReplicaSeedingMode>]
[-LoadBalancedReadOnlyRoutingList <String[][]>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
AsTemplate
New-SqlAvailabilityReplica
[-Name] <String>
-AvailabilityMode <AvailabilityReplicaAvailabilityMode>
-FailoverMode <AvailabilityReplicaFailoverMode>
-EndpointUrl <String>
[-SessionTimeout <Int32>]
[-ConnectionModeInPrimaryRole <AvailabilityReplicaConnectionModeInPrimaryRole>]
[-ConnectionModeInSecondaryRole <AvailabilityReplicaConnectionModeInSecondaryRole>]
[-BackupPriority <Int32>]
[-ReadOnlyRoutingList <String[]>]
[-ReadonlyRoutingConnectionUrl <String>]
[-SeedingMode <AvailabilityReplicaSeedingMode>]
[-LoadBalancedReadOnlyRoutingList <String[][]>]
[-AsTemplate]
[-Version <ServerVersion>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByObject
New-SqlAvailabilityReplica
[-Name] <String>
[-InputObject] <AvailabilityGroup>
-AvailabilityMode <AvailabilityReplicaAvailabilityMode>
-FailoverMode <AvailabilityReplicaFailoverMode>
-EndpointUrl <String>
[-SessionTimeout <Int32>]
[-ConnectionModeInPrimaryRole <AvailabilityReplicaConnectionModeInPrimaryRole>]
[-ConnectionModeInSecondaryRole <AvailabilityReplicaConnectionModeInSecondaryRole>]
[-BackupPriority <Int32>]
[-ReadOnlyRoutingList <String[]>]
[-ReadonlyRoutingConnectionUrl <String>]
[-SeedingMode <AvailabilityReplicaSeedingMode>]
[-LoadBalancedReadOnlyRoutingList <String[][]>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Descrizione
Il cmdlet New-SqlAvailabilityReplica crea una replica di disponibilità. Eseguire questo cmdlet nell'istanza di SQL Server che ospita la replica primaria.
Per creare una replica di disponibilità prima di creare un gruppo di disponibilità, specificare il parametro AsTemplate . Per aggiungere una replica a un gruppo di disponibilità esistente, il parametro InputObject o Path specifica il gruppo di disponibilità.
Esempio
Esempio 1: Crea una rappresentazione di una replica di disponibilità
PS C:\> $ServerObject = Get-Item "SQLSERVER:\Sql\PrimaryServer\InstanceName"
PS C:\> New-SqlAvailabilityReplica -Name "PrimaryServer\Instance" -EndpointUrl "TCP://PrimaryServerName.domain.com:5022" -FailoverMode Automatic -AvailabilityMode SynchronousCommit -AsTemplate -Version $ServerObject.Version
In questo esempio viene creata una rappresentazione in memoria di una replica di disponibilità. Non viene eseguito il commit di modifiche al server. È possibile usare questa replica come valore per il parametro AvailabilityReplica di New-SqlAvailabilityGroup
Il primo comando ottiene un'istanza del server primario.
Il secondo comando crea la replica di disponibilità. Questa replica usa l'endpoint del mirroring del database che si trova nell'URL specificato per comunicare con altre repliche nel gruppo di disponibilità. Questa replica supporta il failover automatico e la modalità di disponibilità con commit sincrono. Il parametro Version specifica la versione dell'istanza del server che ospiterà questa nuova replica.
Esempio 2: Crea una replica di disponibilità che supporta il failover manuale e il commit asincrono
PS C:\> $ServerObject = Get-Item "SQLSERVER:\Sql\PrimaryServer\InstanceName"
PS C:\> New-SqlAvailabilityReplica -Name "SecondaryServer\Instance" -EndpointUrl "TCP://PrimaryServerName.domain.com:5022" -FailoverMode Manual -AvailabilityMode AsynchronousCommit -AsTemplate -Version $ServerObject.Version
In questo esempio viene creata una rappresentazione in memoria di una replica di disponibilità. Non viene eseguito il commit di modifiche al server.
Il primo comando ottiene un'istanza del server primario.
Il secondo comando crea la replica di disponibilità. Questa replica usa l'endpoint del mirroring del database che si trova nell'URL specificato per comunicare con altre repliche nel gruppo di disponibilità. Questa replica supporta il failover manuale e la modalità di disponibilità con commit asincrono. Il parametro Version specifica la versione dell'istanza del server che ospiterà questa nuova replica.
Esempio 3: Aggiungere una replica di disponibilità a un gruppo di disponibilità
PS C:\> New-SqlAvailabilityReplica -Name "SecondaryServer\Instance" -EndpointUrl "TCP://PrimaryServerName.domain.com:5022" -FailoverMode Manual -AvailabilityMode AsynchronousCommit -ConnectionModeInSecondaryRole AllowAllConnections -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG"
Questo comando aggiunge una replica di disponibilità a un gruppo di disponibilità esistente denominato "MainAG". Questa replica supporta il failover manuale e la modalità di disponibilità con commit asincrono. Nel ruolo secondario questa replica supporta le connessioni di accesso in lettura. Questa configurazione consente di eseguire l'offload dell'elaborazione di sola lettura in questa replica.
Parametri
-AccessToken
Token di accesso usato per eseguire l'autenticazione a SQL Server, come alternativa all'autenticazione utente/password o windows.
Può essere usato, ad esempio, per connettersi a SQL Azure DB e SQL Azure Managed Instance usando un Service Principal oggetto o .Managed Identity
Il parametro da usare può essere una stringa che rappresenta il token o un PSAccessToken oggetto restituito eseguendo Get-AzAccessToken -ResourceUrl https://database.windows.net.
Questo parametro è nuovo nella versione 22 del modulo.
Proprietà dei parametri
| Tipo: | PSObject |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-AsTemplate
Indica che questo cmdlet crea un oggetto AvailabilityReplica temporaneo in memoria. Specificare questo parametro per creare un gruppo di disponibilità prima di creare una replica di disponibilità. Creare un gruppo di disponibilità usando il cmdlet New-SqlAvailabilityGroup . Specificare la replica di disponibilità temporanea come valore del parametro AvailabilityReplica .
Se si specifica AsTemplate, questo cmdlet ignora i valori per i parametri InputObject e Path .
Se si specifica questo parametro, è necessario specificare anche una versione di SQL Server per il parametro Version oppure la sessione corrente deve avere una connessione attiva a un'istanza di .
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
AsTemplate
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-AvailabilityMode
Specifica la modalità di disponibilità della replica.
È possibile specificare un valore di $Null.
Proprietà dei parametri
| Tipo: | AvailabilityReplicaAvailabilityMode |
| Valore predefinito: | None |
| Valori accettati: | AsynchronousCommit, SynchronousCommit, Unknown, ConfigurationOnly |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | True |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-BackupPriority
Specifica la priorità desiderata delle repliche nell'esecuzione dei backup. I valori accettabili per questo parametro sono numeri interi compresi tra 0 e 100. Del set di repliche online e disponibili, la replica con la priorità più alta esegue il backup.
Proprietà dei parametri
| Tipo: | Int32 |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | cfr |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-ConnectionModeInPrimaryRole
Specifica il modo in cui la replica di disponibilità gestisce le connessioni quando si trova nel ruolo primario.
I valori accettabili per questo parametro sono:
- AllowReadWriteConnections. Consente connessioni di lettura/scrittura
- AllowAllConnections. Consente tutte le connessioni
Proprietà dei parametri
| Tipo: | AvailabilityReplicaConnectionModeInPrimaryRole |
| Valore predefinito: | None |
| Valori accettati: | AllowAllConnections, AllowReadWriteConnections, Unknown |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-ConnectionModeInSecondaryRole
Specifica il modo in cui la replica di disponibilità gestisce le connessioni quando nel ruolo secondario. I valori accettabili per questo parametro sono:
- AllowNoConnections. Non consente connessioni
- AllowReadIntentConnectionsOnly. Consente solo connessioni con finalità di lettura
- AllowAllConnections. Consente tutte le connessioni
Proprietà dei parametri
| Tipo: | AvailabilityReplicaConnectionModeInSecondaryRole |
| Valore predefinito: | None |
| Valori accettati: | AllowNoConnections, AllowReadIntentConnectionsOnly, AllowAllConnections, Unknown |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Encrypt
Tipo di crittografia da usare per la connessione a SQL Server.
Questo valore esegue il Encrypt mapping alla proprietà SqlConnectionEncryptOption nell'oggetto SqlConnection del driver Microsoft.Data.SqlClient.
Nella versione 22 del modulo, l'impostazione predefinita è Optional (per compatibilità con v21). Nella versione 23+ del modulo, il valore predefinito sarà "Obbligatorio", che potrebbe creare una modifica di rilievo per gli script esistenti.
Questo parametro è nuovo nella versione 22 del modulo.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Valori accettati: | Mandatory, Optional, Strict |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-EndpointUrl
Specifica l'URL dell'endpoint del mirroring del database. Questo URL è un indirizzo TCP nel formato seguente:
TCP://system-address:port
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | True |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-FailoverMode
Specifica la modalità di failover.
È possibile specificare un valore di $Null
Proprietà dei parametri
| Tipo: | AvailabilityReplicaFailoverMode |
| Valore predefinito: | None |
| Valori accettati: | Automatic, Manual, External, Unknown |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | True |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-HostNameInCertificate
Nome host da usare per la convalida del certificato TLS/SSL di SQL Server. È necessario passare questo parametro se l'istanza di SQL Server è abilitata per Forza crittografia e si vuole connettersi a un'istanza usando nome host/nome breve. Se questo parametro viene omesso, è necessario passare il nome di dominio completo (FQDN) a -ServerInstance per connettersi a un'istanza di SQL Server abilitata per Forza crittografia.
Questo parametro è nuovo nella versione 22 del modulo.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-InputObject
Specifica il gruppo di disponibilità, come oggetto AvailabilityGroup , a cui appartiene la replica.
Proprietà dei parametri
| Tipo: | AvailabilityGroup |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
ByObject
| Posizione: | 2 |
| Obbligatorio: | True |
| Valore dalla pipeline: | True |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-LoadBalancedReadOnlyRoutingList
Specifica l'elenco di routing di sola lettura con carico bilanciato.
L'elenco di routing è un elenco di set con carico bilanciato, che a sua volta sono elenchi di repliche.
Ad esempio, passando un valore come
@('Server1','Server2'),@('Server3'),@('Server4')
indica il passaggio di 3 set con bilanciamento del carico: 1 con 2 repliche (Server1 e Server2) e 2 con un solo set (Server3 e Server4, rispettivamente).
In fase di esecuzione, SQL Server esaminerà in sequenza tutti i set con bilanciamento del carico finché non ne trova uno in modo che almeno nella replica sia disponibile e lo userà per il bilanciamento del carico.
Quindi, nell'esempio precedente, se server1 e Server2 non sono disponibili, ma Server3 è, SQL Server selezionerà Server3.
Questo cmdlet imposta solo l'elenco di routing di sola lettura e non verifica la disponibilità delle repliche specificate.
Proprietà dei parametri
| Tipo: | String[][] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Name
Specifica un nome per la replica di disponibilità nel formato seguente: Computer\Istanza
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | 1 |
| Obbligatorio: | True |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Path
Specifica il percorso del gruppo di disponibilità a cui appartiene la replica. Se non si specifica questo parametro, questo cmdlet usa la posizione di lavoro corrente.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
ByPath
| Posizione: | 2 |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-ReadonlyRoutingConnectionUrl
Specifica il nome di dominio completo (FQDN) e la porta da usare durante il routing alla replica per le connessioni di sola lettura, come nell'esempio seguente: TCP://DBSERVER8.manufacturing.Contoso.com:7024
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-ReadOnlyRoutingList
Specifica un elenco ordinato di nomi di server di replica che rappresentano la sequenza di probe da usare per la directory di connessione durante il reindirizzamento delle connessioni di sola lettura tramite questa replica di disponibilità. Questo parametro si applica se la replica di disponibilità è la replica primaria corrente del gruppo di disponibilità.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Script
Indica che questo cmdlet restituisce un Transact-SQL script che esegue l'attività eseguita da questo cmdlet.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-SeedingMode
Specifica in che modo viene eseguito il seeding iniziale della replica secondaria.
Valori consentiti:
- Automatico. Abilita il seeding diretto. Questo metodo esegue il seeding della replica secondaria in rete. Questo metodo non richiede il backup e il ripristino di una copia del database primario nella replica.
- Manuale. Specifica il seeding manuale. Questo metodo richiede la creazione di un backup del database nella replica primaria e il ripristino manuale del backup nella replica secondaria.
Proprietà dei parametri
| Tipo: | AvailabilityReplicaSeedingMode |
| Valore predefinito: | Manual |
| Valori accettati: | Automatic, Manual |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-SessionTimeout
Specifica la quantità di tempo, espressa in secondi, per attendere una risposta tra la replica primaria e la replica prima che la connessione non riesca.
Proprietà dei parametri
| Tipo: | Int32 |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-TrustServerCertificate
Indica se il canale verrà crittografato durante il bypass della catena di certificati per convalidare l'attendibilità.
Nella versione 22 del modulo, l'impostazione predefinita è $true (per compatibilità con v21). Nella versione 23+ del modulo, il valore predefinito sarà "$false", che potrebbe creare una modifica di rilievo per gli script esistenti.
Questo parametro è nuovo nella versione 22 del modulo.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Version
Specifica una versione di SQL Server. Se si specifica il parametro AsTemplate , è necessario specificare una versione. L'oggetto modello viene creato in modalità progettazione in un server che include questa versione. È possibile specificare un numero intero o una stringa, come negli esempi seguenti (SQL Server 2017):
- 14
- '14.0.0'
Proprietà dei parametri
| Tipo: | ServerVersion |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
AsTemplate
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-WhatIf
Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | Wi |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
CommonParameters
Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.
Input
Microsoft.SqlServer.Management.Smo.AvailabilityGroup
È possibile passare un gruppo di disponibilità a questo cmdlet.
Output
Microsoft.SqlServer.Management.Smo.AvailabilityReplica
Questo cmdlet restituisce una replica di disponibilità.