Freigeben über


New-SqlHADREndpoint

Erstellt einen Datenbankspiegelungsendpunkt in einer SQL Server-Instanz.

Syntax

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

Beschreibung

Das Cmdlet New-SqlHADREndpoint erstellt einen Datenbankspiegelungsendpunkt in einer SQL Server-Instanz. Dieser Endpunkt ist für jede Serverinstanz erforderlich, die ein Verfügbarkeitsreplikat für jede Verfügbarkeitsgruppe hostt. Jede Serverinstanz kann nur einen Datenbankspiegelungsendpunkt haben. Wenn eine Serverinstanz über einen Datenbankspiegelungsendpunkt verfügt, verwenden Sie den vorhandenen Endpunkt.

Beispiele

Beispiel 1: Erstellen eines Datenbankspiegelungsendpunkts

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

Mit diesem Befehl wird ein Datenbankspiegelungsendpunkt namens MainEndpoint auf der Serverinstanz erstellt, die sich im angegebenen Pfad befindet. Dieser Endpunkt verwendet den Standardport 5022.

Beispiel 2: Erstellen eines Datenbankspiegelungsendpunkts, der Verschlüsselung erfordert

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

Mit diesem Befehl wird ein Datenbankspiegelungsendpunkt namens MainEndpoint auf der Serverinstanz erstellt, die sich im angegebenen Pfad befindet. Dieser Endpunkt überwacht portiert 4022. Der Endpunkt verwendet den AES Algorithmus für die Verschlüsselung und erfordert, dass Verbindungen Verschlüsselung verwenden.

Beispiel 3: Erstellen eines Datenbankspiegelungsendpunkts, der mit einem Zertifikat verschlüsselt ist

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

Mit diesem Befehl wird ein Datenbankspiegelungsendpunkt namens MainEndpoint auf der Serverinstanz erstellt, die sich im angegebenen Pfad befindet. Dieser Endpunkt verwendet das Zertifikat namens EncryptionCertificate zum Authentifizieren von Verbindungen.

Beispiel 4: Erstellen eines Endpunktskripts für die Datenbankspiegelung

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

Mit diesem Befehl wird das skript Transact-SQL ausgegeben, das einen Datenbankspiegelungsendpunkt namens MainEndpoint auf der Serverinstanz erstellt, die sich am angegebenen Pfad befindet. Der Endpunkt wird nicht tatsächlich von diesem Befehl erstellt.

Parameter

-AccessToken

Das Zugriffstoken, das zur Authentifizierung bei SQL Server verwendet wird, als Alternative zur Benutzer-/Kennwort- oder Windows-Authentifizierung.

Dies kann z. B. zum Herstellen einer Verbindung mit SQL Azure DB und SQL Azure Managed Instance mithilfe eines Service Principal oder einer Managed Identityverwendet werden.

Der zu verwendende Parameter kann entweder eine Zeichenfolge sein, die das Token darstellt, oder ein PSAccessToken-Objekt, wie durch Ausführen von Get-AzAccessToken -ResourceUrl https://database.windows.netzurückgegeben wird.

Dieser Parameter ist neu in v22 des Moduls.

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

-AuthenticationOrder

Gibt die Reihenfolge und den Typ der Authentifizierung an, die vom Endpunkt verwendet wird.

Wenn die angegebene Option ein Zertifikat aufruft, muss der Parameter "Certificate" festgelegt werden.

Typ:EndpointAuthenticationOrder
Zulässige Werte:Ntlm, Kerberos, Negotiate, Certificate, NtlmCertificate, KerberosCertificate, NegotiateCertificate, CertificateNtlm, CertificateKerberos, CertificateNegotiate
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Certificate

Gibt den Namen des Zertifikats an, das der Endpunkt zum Authentifizieren von Verbindungen verwendet. Der weit entfernte Endpunkt muss über ein Zertifikat mit dem öffentlichen Schlüssel verfügen, der mit dem privaten Schlüssel des Zertifikats übereinstimmt.

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

-Confirm

Fordert Sie vor dem Ausführen des Cmdlets zur Bestätigung auf.

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

-Encrypt

Der Verschlüsselungstyp, der beim Herstellen einer Verbindung mit SQL Server verwendet werden soll.

Dieser Wert ist der Encrypt Eigenschaft SqlConnectionEncryptOption für das SqlConnection-Objekt des Microsoft.Data.SqlClient-Treibers zugeordnet.

In v22 des Moduls ist die Standardeinstellung Optional (aus Kompatibilität mit v21). In v23+ des Moduls lautet der Standardwert "Verpflichtend", wodurch für vorhandene Skripts eine bahnbrechende Änderung erstellt werden kann.

Dieser Parameter ist neu in v22 des Moduls.

Typ:String
Zulässige Werte:Mandatory, Optional, Strict
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Encryption

Gibt die Verschlüsselungsoption für den Endpunkt an.

Der Standardwert ist Required.

Typ:EndpointEncryption
Zulässige Werte:Disabled, Supported, Required
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-EncryptionAlgorithm

Gibt die Vom Endpunkt verwendete Verschlüsselungsform an.

Standardmäßig verwendet der Endpunkt die Aes-Verschlüsselung.

HINWEIS: Der RC4-Algorithmus wird nur aus Gründen der Abwärtskompatibilität unterstützt. Neues Material kann nur mit RC4 oder RC4_128 verschlüsselt werden, wenn sich die Datenbank in Kompatibilitätsebene 90 oder 100 befindet, dies wird jedoch nicht empfohlen. Verwenden Sie für erhöhte Sicherheit stattdessen einen neueren Algorithmus wie einen der AES Algorithmen.

Typ:EndpointEncryptionAlgorithm
Zulässige Werte:None, RC4, Aes, AesRC4, RC4Aes
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-HostNameInCertificate

Der Hostname, der beim Überprüfen des SQL Server TLS/SSL-Zertifikats verwendet werden soll. Sie müssen diesen Parameter übergeben, wenn Ihre SQL Server-Instanz für die Erzwingungsverschlüsselung aktiviert ist und Sie eine Verbindung mit einer Instanz mit hostname/shortname herstellen möchten. Wenn dieser Parameter nicht angegeben wird, ist das Übergeben des vollqualifizierten Domänennamens (Fully Qualified Domain Name, FQDN) an -ServerInstance erforderlich, um eine Verbindung mit einer SQL Server-Instanz herzustellen, die für die Erzwingungsverschlüsselung aktiviert ist.

Dieser Parameter ist neu in v22 des Moduls.

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

-InputObject

Gibt das Serverobjekt der SQL Server-Instanz an, in der der Endpunkt erstellt wird.

Typ:Server
Position:2
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-IpAddress

Gibt die IP-Adresse des Endpunkts an. Der Standardwert ist ALL, der angibt, dass der Listener eine Verbindung mit jeder gültigen IP-Adresse akzeptiert.

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

-Name

Gibt den Endpunktnamen an.

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

-Owner

Gibt die Anmeldung des Besitzers des Endpunkts an. Standardmäßig ist dies die aktuelle Anmeldung.

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

-Path

Gibt den Pfad zur SQL Server-Instanz des Endpunkts an. Wenn nicht angegeben, wird der aktuelle Arbeitsort verwendet.

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

-Port

Gibt den TCP-Port an, auf den der Endpunkt auf Verbindungen lauscht. Der Standardwert ist 5022.

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

-ProgressAction

Bestimmt, wie PowerShell auf Statusaktualisierungen reagiert, die von einem Skript, Cmdlet oder Anbieter generiert werden, z. B. auf die Statusanzeigen, die vom Cmdlet Write-Progress generiert werden. Das Cmdlet Write-Progress erstellt Statusanzeigen, die den Status eines Befehls anzeigen.

Typ:ActionPreference
Aliase:proga
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Script

Gibt an, dass dieses Cmdlet ein Transact-SQL Skript zurückgibt, das die Aufgabe ausführt.

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

-TrustServerCertificate

Gibt an, ob der Kanal verschlüsselt wird, während die Zertifikatkette umgangen wird, um die Vertrauensstellung zu überprüfen.

In v22 des Moduls ist die Standardeinstellung $true (aus Kompatibilität mit v21). In v23+ des Moduls lautet der Standardwert "$false", wodurch möglicherweise eine änderung für vorhandene Skripts geändert wird.

Dieser Parameter ist neu in v22 des Moduls.

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

-WhatIf

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

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

Eingaben

Microsoft.SqlServer.Management.Smo.Server

Ausgaben

SMO.Endpoint