Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
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
Een eindpunt voor databasespiegeling maken met behulp van:Transact-SQL
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
Maak verbinding met het exemplaar van SQL Server waarop u een eindpunt voor databasespiegeling wilt maken.
Klik in de standaardbalk op Nieuwe query.
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.
Als u Transact-SQL wilt gebruiken om een eindpunt te maken voor gebruik met Windows-verificatie, gebruikt u een
CREATE ENDPOINTinstructie. 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 = PARTNERofROLE = WITNESSop.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
Certificaten gebruiken voor een eindpunt voor databasespiegeling (Transact-SQL)
Geef de eindpunt-URL op bij het toevoegen of wijzigen van een beschikbaarheidsreplica (SQL Server)
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)