Een databasespiegelingseindpunt maken voor Windows-verificatie (Transact-SQL)

Van toepassing op:SQL Server

In dit onderwerp wordt beschreven hoe u een eindpunt voor databasespiegeling maakt dat gebruikmaakt van Windows-verificatie in SQL Server met behulp van Transact-SQL. Voor ondersteuning van databasespiegeling of AlwaysOn-beschikbaarheidsgroepen vereist elk exemplaar van SQL Server een eindpunt voor databasespiegeling. Een serverexemplaar kan slechts één eindpunt voor databasespiegeling hebben, dat één enkele poort heeft. Een eindpunt voor databasespiegeling kan elke poort gebruiken die beschikbaar is op het lokale systeem wanneer het eindpunt wordt gemaakt. Alle databasespiegelingssessies op een serverexemplaar luisteren op die poort, en alle binnenkomende verbindingen voor databasespiegeling gebruiken die poort.

Important

Als er een eindpunt voor databasespiegeling bestaat en al in gebruik is, raden we u aan dat eindpunt te gebruiken. Het verwijderen van een eindpunt dat in gebruik is, verstoort bestaande sessies.

In Dit Onderwerp

Voordat u begint

Security

De verificatie- en versleutelingsmethoden van het serverexemplaren worden ingesteld door de systeembeheerder.

Warning

Het RC4-algoritme is afgeschaft. Deze functie wordt verwijderd in een toekomstige versie van SQL Server. Vermijd het gebruik van deze functie in nieuwe ontwikkelwerkzaamheden en plan om toepassingen te wijzigen die momenteel gebruikmaken van deze functie. U wordt aangeraden AES te gebruiken.

toestemmingen

Hiervoor is machtiging of lidmaatschap van de CREATE ENDPOINT vaste serverfunctie vereistsysadmin. Zie GRANT Eindpuntmachtigingen (Transact-SQL) voor meer informatie.

Transact-SQL gebruiken

Een databasespiegelingseindpunt maken dat gebruikmaakt van Windows-verificatie

  1. Maak verbinding met het exemplaar van SQL Server waarop u een eindpunt voor databasespiegeling wilt maken.

  2. Klik in de standaardbalk op Nieuwe query.

  3. Bepaal of er al een eindpunt voor databasespiegeling bestaat met behulp van de volgende instructie:

    SELECT name, role_desc, state_desc FROM sys.database_mirroring_endpoints;   
    

    Important

    Als er al een eindpunt voor databasespiegeling bestaat voor het serverexemplaren, gebruikt u dat eindpunt voor andere sessies die u tot stand brengt op het serverexemplaren.

  4. Als u Transact-SQL wilt gebruiken om een eindpunt te maken voor gebruik met Windows-verificatie, gebruikt u een CREATE ENDPOINT instructie. De instructie heeft de volgende algemene vorm:

    CREATE ENDPOINT *\<endpointName>*  
    
    STATE=STARTED  
    
    AS TCP ( LISTENER_PORT = *\<listenerPortList>* )  
    
    FOR DATABASE_MIRRORING  
    
    (  
    
    [ AUTHENTICATION = **WINDOWS** [ *\<authorizationMethod>* ]  
    
    ]  
    
    [ [**,**] ENCRYPTION = **REQUIRED**  
    
    [ ALGORITHM { *\<algorithm>* } ]  
    
    ]  
    
    [**,**] ROLE = *\<role>*  
    
    )  
    

    Where:

    • <endpointName> is een unieke naam voor het eindpunt voor databasespiegeling van het serverexemplaar.

    • STARTED geeft aan dat het eindpunt moet worden gestart en moet beginnen te luisteren naar inkomende verbindingen. Een eindpunt voor databasespiegeling wordt doorgaans gemaakt in de status GESTART. U kunt ook een sessie starten met de status GESTOPT (de standaardinstelling) of UITGESCHAKELD.

    • <listenerPortList> is één poortnummer (nnnn) waarop u wilt dat de server luistert naar databasespiegelingsberichten. Alleen TCP is toegestaan; Als u een ander protocol opgeeft, treedt er een fout op.

      Een poortnummer kan slechts eenmaal per computersysteem worden gebruikt. Een eindpunt voor databasespiegeling kan elke poort gebruiken die beschikbaar is op het lokale systeem wanneer het eindpunt wordt gemaakt. Gebruik de volgende Transact-SQL instructie om de poorten te identificeren die momenteel door TCP-eindpunten in het systeem worden gebruikt:

      SELECT name, port FROM sys.tcp_endpoints;  
      

      Important

      Voor elk serverexemplaar is precies één unieke luisterpoort vereist.

    • Voor Windows verificatie is de optie VERIFICATIE optioneel, tenzij u wilt dat het eindpunt alleen NTLM of Kerberos gebruikt om verbindingen te verifiëren. <authorizationMethod> geeft de methode op die wordt gebruikt voor het verifiëren van verbindingen als een van de volgende: NTLM, KERBEROS of NEGOTIATE. De standaardinstelling, NEGOTIATE, zorgt ervoor dat het eindpunt het Windows onderhandelingsprotocol gebruikt om NTLM of Kerberos te kiezen. Onderhandeling maakt verbindingen met of zonder verificatie mogelijk, afhankelijk van het verificatieniveau van het tegenovergestelde eindpunt.

      Note

      Als u Kerberos-verificatie wilt gebruiken voor de communicatie tussen beschikbaarheidsgroepeindpunten (AG), registreert u een Service Principal Name voor Kerberos-verbindingen voor de eindpunten voor databasespiegeling die door de AG worden gebruikt.

    • VERSLEUTELING is standaard ingesteld op VEREIST. Dit betekent dat alle verbindingen met dit eindpunt versleuteling moeten gebruiken. U kunt echter versleuteling uitschakelen of optioneel maken op een eindpunt. De alternatieven zijn als volgt:

      Value Definition
      DISABLED Hiermee geeft u op dat gegevens die via een verbinding worden verzonden, niet zijn versleuteld.
      ONDERSTEUND Hiermee geeft u op dat de gegevens alleen worden versleuteld als het tegenovergestelde eindpunt ONDERSTEUND of VEREIST opgeeft.
      VEREIST Hiermee geeft u op dat gegevens die via een verbinding worden verzonden, moeten worden versleuteld.

      Als voor een eindpunt versleuteling is vereist, moet voor het andere eindpunt VERSLEUTELING zijn ingesteld op ONDERSTEUND of VEREIST.

    • <algoritme> biedt de mogelijkheid om de versleutelingsstandaarden voor het eindpunt op te geven. De waarde van <het algoritme> kan een van de volgende algoritmen of combinaties van algoritmen zijn: RC4, AES, AES RC4 of RC4 AES.

      Het AES-algoritme voor het eindpunt voor databasespiegeling maakt gebruik van een 128-bits sleutellengte.

      AES RC4 geeft aan dat dit eindpunt onderhandelt over het versleutelingsalgoritmen, waarbij de voorkeur wordt gegeven aan het AES-algoritme. RC4 AES geeft aan dat dit eindpunt onderhandelt over het versleutelingsalgoritmen, waarbij de voorkeur wordt gegeven aan het RC4-algoritme. Als beide eindpunten beide algoritmen maar in verschillende orders opgeven, wint het eindpunt dat de verbinding accepteert. Geef hetzelfde algoritme expliciet op om verbindingsfouten tussen verschillende servers te voorkomen.

      Warning

      Het RC4-algoritme is afgeschaft. Deze functie wordt verwijderd in een toekomstige versie van SQL Server. Vermijd het gebruik van deze functie in nieuwe ontwikkelwerkzaamheden en plan om toepassingen te wijzigen die momenteel gebruikmaken van deze functie. U wordt aangeraden AES te gebruiken.

    • <rol> definieert de rol of rollen die de server kan uitvoeren. ROLE Opgeven is vereist. De rol van het eindpunt is echter alleen relevant voor databasespiegeling. Voor AlwaysOn-beschikbaarheidsgroepen wordt de rol van het eindpunt genegeerd.

      Als u wilt toestaan dat een serverexemplaar in de ene databasespiegelingssessie als de ene rol en in een andere sessie als een andere rol fungeert, geeft u ROLE=ALL op. Als u een serverexemplaar wilt beperken tot partner of getuige, geeft u respectievelijk ROLE = PARTNER of ROLE = WITNESS op.

      Note

      Zie Functies die worden ondersteund door de edities van SQL Server 2016 voor meer informatie over opties voor databasespiegeling voor verschillende edities van SQL Server.

    Zie (Transact-SQL) voor een volledige beschrijving van de CREATE ENDPOINT syntaxisCREATE ENDPOINT.

    Note

    Als u een bestaand eindpunt wilt wijzigen, gebruikt u ALTER ENDPOINT (Transact-SQL).

Voorbeeld: Eindpunten maken voor ondersteuning voor databasespiegeling (Transact-SQL)

In het volgende voorbeeld worden eindpunten voor databasespiegeling gemaakt voor de standaardserverexemplaren op drie afzonderlijke computersystemen:

Rol van de serverinstantie Naam van hostcomputer
Partner (in eerste instantie in de principale rol) SQLHOST01\.
Partner (in eerste instantie in de spiegelrol) SQLHOST02\.
Witness SQLHOST03\.

In dit voorbeeld gebruiken alle drie de eindpunten poortnummer 7022, hoewel elk beschikbaar poortnummer zou werken. De optie VERIFICATIE is niet nodig, omdat de eindpunten het standaardtype Windows Verificatie gebruiken. De optie VERSLEUTELING is ook overbodig, omdat de eindpunten allemaal zijn bedoeld om te onderhandelen over de verificatiemethode voor een verbinding. Dit is het standaardgedrag voor Windows-verificatie. Voor alle eindpunten is ook de versleuteling vereist. Dit is het standaardgedrag.

Elke serverinstantie kan alleen fungeren als partner of getuige, en het eindpunt van elke server geeft expliciet aan welke rol (ROLE=PARTNER of ROLE=WITNESS).

Important

Elke serverinstantie kan maar één eindpunt hebben. Daarom, als u wilt dat een serverexemplaar in sommige sessies een partner is en in andere de witness, specificeert u ROLE=ALL.

--Endpoint for initial principal server instance, which  
--is the only server instance running on SQLHOST01.  
CREATE ENDPOINT endpoint_mirroring  
    STATE = STARTED  
    AS TCP ( LISTENER_PORT = 7022 )  
    FOR DATABASE_MIRRORING (ROLE=PARTNER);  
GO  
--Endpoint for initial mirror server instance, which  
--is the only server instance running on SQLHOST02.  
CREATE ENDPOINT endpoint_mirroring  
    STATE = STARTED  
    AS TCP ( LISTENER_PORT = 7022 )  
    FOR DATABASE_MIRRORING (ROLE=PARTNER);  
GO  
--Endpoint for witness server instance, which  
--is the only server instance running on SQLHOST03.  
CREATE ENDPOINT endpoint_mirroring  
    STATE = STARTED  
    AS TCP ( LISTENER_PORT = 7022 )  
    FOR DATABASE_MIRRORING (ROLE=WITNESS);  
GO  

Gerelateerde taken

Een eindpunt voor databasespiegeling configureren

Informatie over het eindpunt voor databasespiegeling weergeven

Zie ook

ALTER ENDPOINT (Transact-SQL)
Een versleutelingsalgoritmen kiezen
CREATE ENDPOINT (Transact-SQL)
Een servernetwerkadres opgeven (databasespiegeling)
Voorbeeld: Databasespiegeling instellen met Windows-verificatie (Transact-SQL)
Het Eindpunt voor Databasespiegeling (SQL Server)