Condividi tramite


New-SqlHADREndpoint

Crea un endpoint del mirroring del database in un'istanza di SQL Server.

Sintassi

New-SqlHADREndpoint
   [-Port <Int32>]
   [-Owner <String>]
   [-Certificate <String>]
   [-IpAddress <IPAddress>]
   [-AuthenticationOrder <EndpointAuthenticationOrder>]
   [-Encryption <EndpointEncryption>]
   [-EncryptionAlgorithm <EndpointEncryptionAlgorithm>]
   [-Name] <String>
   [[-Path] <String>]
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-SqlHADREndpoint
   [-Port <Int32>]
   [-Owner <String>]
   [-Certificate <String>]
   [-IpAddress <IPAddress>]
   [-AuthenticationOrder <EndpointAuthenticationOrder>]
   [-Encryption <EndpointEncryption>]
   [-EncryptionAlgorithm <EndpointEncryptionAlgorithm>]
   [-Name] <String>
   [-InputObject] <Server>
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Descrizione

Il cmdlet New-SqlHADREndpoint crea un endpoint del mirroring del database in un'istanza di SQL Server. Questo endpoint è necessario in ogni istanza del server che ospita una replica di disponibilità per qualsiasi gruppo di disponibilità. Ogni istanza del server può avere un solo endpoint del mirroring del database. Se un'istanza del server dispone di un endpoint del mirroring del database, usare l'endpoint esistente.

Esempio

Esempio 1: Creare un endpoint del mirroring del database

PS C:\> New-SqlHADREndpoint -Path "SQLSERVER:\Sql\Computer\Instance" -Name "MainEndpoint"

Questo comando crea un endpoint del mirroring del database denominato MainEndpoint nell'istanza del server che si trova nel percorso specificato. Questo endpoint usa la porta predefinita 5022.

Esempio 2: Creare un endpoint del mirroring del database che richiede la crittografia

PS C:\> New-SqlHADREndpoint -Path "SQLSERVER:\Sql\Computer\Instance" -Name "MainEndpoint" -Port 4022 -EncryptionAlgorithm Aes -Encryption Required

Questo comando crea un endpoint del mirroring del database denominato MainEndpoint nell'istanza del server che si trova nel percorso specificato. Questo endpoint è in ascolto sulla porta 4022. L'endpoint usa l'algoritmo AES per la crittografia e richiede che le connessioni usino la crittografia.

Esempio 3: Creare un endpoint del mirroring del database crittografato con un certificato

PS C:\> New-SqlHADREndpoint -Path "SQLSERVER:\Sql\Computer\Instance" -Name "MainEndpoint" -AuthenticationOrder Certificate -Certificate "EncryptionCertificate"

Questo comando crea un endpoint del mirroring del database denominato MainEndpoint nell'istanza del server che si trova nel percorso specificato. Questo endpoint usa il certificato denominato EncryptionCertificate per autenticare le connessioni.

Esempio 4: Creare uno script dell'endpoint del mirroring del database

PS C:\> New-SqlHADREndpoint -Path "SQLSERVER:\Sql\Computer\Instance" -Name "MainEndpoint" -Script

Questo comando restituisce lo script Transact-SQL che crea un endpoint del mirroring del database denominato MainEndpoint nell'istanza del server che si trova nel percorso specificato. L'endpoint non viene effettivamente creato da questo comando.

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 o un Managed Identity.

Il parametro da usare può essere una stringa che rappresenta il token o un oggetto PSAccessToken restituito eseguendo Get-AzAccessToken -ResourceUrl https://database.windows.net.

Questo parametro è nuovo nella versione 22 del modulo.

Tipo:PSObject
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-AuthenticationOrder

Specifica l'ordine e il tipo di autenticazione usati dall'endpoint.

Se l'opzione specificata chiama un certificato, è necessario impostare il parametro Certificate.

Tipo:EndpointAuthenticationOrder
Valori accettati:Ntlm, Kerberos, Negotiate, Certificate, NtlmCertificate, KerberosCertificate, NegotiateCertificate, CertificateNtlm, CertificateKerberos, CertificateNegotiate
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Certificate

Specifica il nome del certificato che verrà usato dall'endpoint per autenticare le connessioni. L'endpoint lontano deve avere un certificato con la chiave pubblica corrispondente alla chiave privata del certificato.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-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

-Encrypt

Tipo di crittografia da usare per la connessione a SQL Server.

Questo valore esegue il mapping alla proprietà EncryptSqlConnectionEncryptOption sull'oggetto SqlConnection del driver Microsoft.Data.SqlClient.

Nella versione 22 del modulo, il valore predefinito è 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.

Tipo:String
Valori accettati:Mandatory, Optional, Strict
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Encryption

Specifica l'opzione di crittografia per l'endpoint.

Il valore predefinito è Required.

Tipo:EndpointEncryption
Valori accettati:Disabled, Supported, Required
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-EncryptionAlgorithm

Specifica la forma di crittografia utilizzata dall'endpoint.

Per impostazione predefinita, l'endpoint userà la crittografia Aes.

NOTA: l'algoritmo RC4 è supportato solo per la compatibilità con le versioni precedenti. Il nuovo materiale può essere crittografato solo usando RC4 o RC4_128 quando il database è nel livello di compatibilità 90 o 100, ma questo non è consigliato. Per una maggiore sicurezza, usare invece un algoritmo più recente, ad esempio uno degli algoritmi di AES.

Tipo:EndpointEncryptionAlgorithm
Valori accettati:None, RC4, Aes, AesRC4, RC4Aes
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-HostNameInCertificate

Nome host da usare per convalidare il 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.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-InputObject

Specifica l'oggetto server dell'istanza di SQL Server in cui viene creato l'endpoint.

Tipo:Server
Posizione:2
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-IpAddress

Specifica l'indirizzo IP dell'endpoint. Il valore predefinito è ALL, che indica che il listener accetta una connessione su qualsiasi indirizzo IP valido.

Tipo:IPAddress
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Name

Specifica il nome dell'endpoint.

Tipo:String
Posizione:1
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Owner

Specifica l'account di accesso del proprietario dell'endpoint. Per impostazione predefinita, si tratta dell'account di accesso corrente.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Path

Specifica il percorso dell'istanza di SQL Server dell'endpoint. Se non specificato, viene utilizzata la posizione di lavoro corrente.

Tipo:String
Posizione:2
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Port

Specifica la porta TCP in cui l'endpoint sarà in ascolto delle connessioni. Il valore predefinito è 5022.

Tipo:Int32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ProgressAction

Determina in che modo PowerShell risponde agli aggiornamenti dello stato generati da uno script, un cmdlet o un provider, ad esempio le barre di stato generate dal cmdlet Write-Progress. Il cmdlet Write-Progress crea barre di stato che mostrano lo stato di un comando.

Tipo:ActionPreference
Alias:proga
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Script

Indica che questo cmdlet restituisce uno script Transact-SQL che esegue l'attività.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-TrustServerCertificate

Indica se il canale verrà crittografato durante il bypass della catena di certificati per convalidare l'attendibilità.

Nella versione 22 del modulo, il valore predefinito è $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.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-WhatIf

Mostra cosa accadrebbe se il cmdlet viene eseguito. 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.SqlServer.Management.Smo.Server

Output

SMO.Endpoint