Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:SQL Server
En este tema se describe cómo crear un punto de conexión de reflejo de la base de datos que utilice la autenticación de Windows en SQL Server mediante Transact-SQL. Para admitir la creación de reflejo de la base de datos o los grupos de disponibilidad Always On, cada instancia de SQL Server requiere un punto de conexión de creación de reflejo de la base de datos. Una instancia de servidor solo puede tener un extremo de duplicación de la base de datos, que usa un único puerto. Un extremo de creación de reflejo de la base de datos puede usar cualquier puerto que esté disponible en el sistema local al crear el extremo. Todas las sesiones de creación de reflejo de la base de datos de una instancia del servidor escuchan en ese puerto, y todas las conexiones entrantes para la creación de reflejo de la base de datos utilizan ese puerto.
Importante
Si existe un extremo de creación de reflejo de la base de datos y ya está en uso, se recomienda utilizar dicho extremo. Eliminar un punto de conexión en uso interrumpe las sesiones existentes.
En este tema
Antes de comenzar:Seguridad
Para crear un extremo de creación de reflejo de la base de datos, use:Transact-SQL
Antes de empezar
Seguridad
El administrador del sistema establece los métodos de autenticación y cifrado de la instancia del servidor.
Advertencia
El algoritmo RC4 está obsoleto. Esta característica se quitará en una versión futura de SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. Se recomienda utilizar AES.
Permisos
Debe disponer del permiso CREATE ENDPOINT o pertenecer al rol fijo de servidor sysadmin. Para obtener más información, consulte GRANT Permisos de punto de conexión (Transact-SQL).
Uso de Transact-SQL
Para crear un extremo de reflejo de la base de datos que use la autenticación de Windows
Conéctese a la instancia de SQL Server en la que desea crear un extremo de creación de reflejo de la base de datos.
En la barra Estándar, haga clic en Nueva consulta.
Determine si ya existe un extremo de creación de reflejo de la base de datos utilizando la siguiente instrucción:
SELECT name, role_desc, state_desc FROM sys.database_mirroring_endpoints;Importante
Si ya existe un extremo de creación de reflejo de la base de datos para la instancia del servidor, utilice ese extremo para todas las otras sesiones que establezca en la instancia del servidor.
Si quiere usar Transact-SQL a fin de crear un punto de conexión para utilizarlo con la autenticación de Windows, use la instrucción
CREATE ENDPOINT. La instrucción toma la siguiente forma general:CREATE ENDPOINT *\<endpointName>* STATE=STARTED AS TCP ( LISTENER_PORT = *\<listenerPortList>* ) FOR DATABASE_MIRRORING ( [ AUTHENTICATION = **WINDOWS** [ *\<authorizationMethod>* ] ] [ [**,**] ENCRYPTION = **REQUIRED** [ ALGORITHM { *\<algorithm>* } ] ] [**,**] ROLE = *\<role>* )Donde:
<nombreDePuntoDeConexión> es un nombre exclusivo del punto de conexión de creación de reflejo de la base de datos de la instancia del servidor.
STARTED especifica que el extremo debe iniciarse y que debe empezar a escuchar las conexiones. Un extremo de creación de reflejo de la base de datos normalmente se crea en el estado STARTED. Opcionalmente, puede iniciar una sesión en el estado STOPPED (valor predeterminado) o DISABLED.
<listenerPortList> es un número de puerto único (nnnn) en el que quiere que el servidor escuche los mensajes de creación de reflejo de la base de datos. Solo se permite TCP; si se especifica cualquier otro protocolo se provoca un error.
Un número de puerto solo se puede usar una vez por sistema. Un extremo de creación de reflejo de base de datos puede utilizar cualquier puerto disponible en el sistema local cuando se crea el extremo. Para identificar los puertos que están usando los extremos TCP del sistema, utilice la siguiente instrucción Transact-SQL:
SELECT name, port FROM sys.tcp_endpoints;Importante
Cada instancia del servidor requiere solo un puerto de escucha único.
Para la autenticación de Windows, la opción AUTHENTICATION es opcional, a menos que quiera que el extremo de servicio use únicamente NTLM o Kerberos para autenticar las conexiones. <métodoDeAutorización> especifica el método usado para autenticar conexiones como uno de los siguientes: NTLM, KERBEROS o NEGOTIATE. El valor predeterminado, NEGOTIATE, hace que el extremo utilice el protocolo de negociación de Windows para elegir NTLM o Kerberos. La negociación habilita conexiones con o sin autenticación, dependiendo del nivel de autenticación del extremo opuesto.
Nota
Para usar la autenticación Kerberos para la comunicación entre los puntos de conexión del grupo de disponibilidad (AG), registre un nombre de entidad de seguridad principal de servicio para las conexiones Kerberos para los extremos de creación de reflejo de la base de datos que usa el grupo de disponibilidad.
ENCRYPTION está configurado como REQUIRED de forma predeterminada. Esto significa que todas las conexiones con este punto final deben usar cifrado. No obstante, puede deshabilitar el cifrado o hacer que sea opcional en un extremo. Las alternativas son las siguientes:
Valor Definición Desactivado Especifica que los datos enviados a través de una conexión no están cifrados. COMPATIBLE Especifica que los datos están cifrados solo si el extremo opuesto especifica SUPPORTED o REQUIRED. OBLIGATORIO Especifica que los datos enviados en una conexión deben estar cifrados. Si un punto de conexión requiere cifrado, el otro punto de conexión debe tener ENCRYPTION configurado como SUPPORTED o REQUIRED.
<algoritmo> ofrece la opción de especificar estándares de cifrado para el punto de conexión. El valor de <algoritmo> puede ser uno de los siguientes algoritmos o combinaciones de algoritmos: RC4, AES, AES RC4 o RC4 AES.
El algoritmo AES para el extremo de creación de reflejo de la base de datos utiliza una clave de 128 bits.
AES RC4 especifica que este extremo negociará el algoritmo de cifrado, dando preferencia al algoritmo AES. RC4 AES especifica que este extremo negociará el algoritmo de cifrado, dando preferencia al algoritmo RC4. Si ambos extremos especifican estos dos algoritmos en distintas órdenes, el extremo que acepte la conexión gana. Proporcione el mismo algoritmo de forma explícita para evitar errores de conexión entre distintos servidores.
Advertencia
El algoritmo RC4 está obsoleto. Esta característica se quitará en una versión futura de SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. Se recomienda utilizar AES.
<rol> define el rol o los roles que el servidor puede llevar a cabo. Se requiere especificar ROLE . Sin embargo, el rol del punto de conexión solo es relevante para la duplicación de la base de datos. Para grupos de disponibilidad Always On, se omite el rol del punto de conexión.
Para permitir que una instancia de servidor actúe como un rol para una sesión de creación de reflejo de la base de datos y un rol diferente para otra sesión, especifique ROLE=ALL. Para restringir una instancia de servidor a que sea únicamente un asociado o un testigo, especifique
ROLE = PARTNERoROLE = WITNESS, respectivamente.Nota
Para obtener más información sobre las opciones de creación de reflejo de la base de datos en distintas ediciones de SQL Server, vea Características compatibles con las ediciones de SQL Server 2016.
Para obtener una descripción completa de la CREATE ENDPOINT sintaxis, vea CREATE ENDPOINT (Transact-SQL).
Nota
Para cambiar un punto de conexión existente, use ALTER ENDPOINT (Transact-SQL).
Ejemplo: Crear puntos de conexión para admitir la creación de reflejo de la base de datos (Transact-SQL)
En el siguiente ejemplo se crean extremos de creación de reflejo de la base de datos para las instancias de servidor predeterminadas en tres sistemas informáticos independientes:
| Rol de la instancia de servidor | Nombre del equipo host |
|---|---|
| Asociado (inicialmente en el rol principal) | SQLHOST01\. |
| Asociado (inicialmente en el rol reflejado) | SQLHOST02\. |
| Testigo | SQLHOST03\. |
En este ejemplo, los tres extremos utilizan el número de puerto 7022, aunque funcionaría cualquier número de puerto disponible. La opción AUTHENTICATION no es necesaria, porque los extremos utilizan el tipo predeterminado, Autenticación de Windows. La opción ENCRYPTION tampoco es necesaria, porque se supone que los extremos van a negociar el método de autenticación de una conexión, que es el comportamiento predeterminado para la autenticación de Windows. Además, todos los extremos requieren cifrado, que es el comportamiento predeterminado.
Cada instancia de servidor se limita a servir como asociado o testigo, y el punto de conexión de cada servidor especifica expresamente qué rol (ROLE=PARTNER o ROLE=WITNESS).
Importante
Cada instancia de servidor solo puede tener un extremo. Por lo tanto, si desea que una instancia de servidor sea un asociado en algunas sesiones y el testigo en otros, especifique 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
Tareas relacionadas
Para configurar un extremo de creación de reflejo de la base de datos
Usar certificados para un extremo de creación de reflejo de base de datos (Transact-SQL)
Especificar una dirección de red del servidor (duplicación de la base de datos)
Para ver información acerca del extremo de creación de reflejo de la base de datos
Consulte también
ALTER ENDPOINT (Transact-SQL)
Elegir un algoritmo de cifrado
CREATE ENDPOINT (Transact-SQL)
Especificar una dirección de red del servidor (duplicación de la base de datos)
Ejemplo: Configurar la creación de reflejo de la base de datos mediante la autenticación de Windows (Transact-SQL)
El extremo de duplicación de la base de datos (SQL Server)