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.
En este tema se proporciona información que le ayudará a solucionar problemas típicos con la configuración de instancias de servidor para grupos de disponibilidad AlwaysOn. Los problemas de configuración típicos incluyen que los Grupos de disponibilidad Always On están deshabilitados, las cuentas están configuradas incorrectamente, el punto de conexión de creación de reflejo de la base de datos no existe, el punto de conexión es inaccesible (error de SQL Server 1418), no existe acceso a la red, y falla un comando de combinación de base de datos (error 35250 de SQL Server).
Nota:
Asegúrese de que cumple los requisitos previos de los grupos de disponibilidad AlwaysOn. Para obtener más información, vea Requisitos previos, restricciones y recomendaciones para grupos de disponibilidad AlwaysOn (SQL Server).
En este tema:
Sección | Descripción |
---|---|
Los grupos de disponibilidad AlwaysOn no están habilitados | Si una instancia de SQL Server no está habilitada para grupos de disponibilidad AlwaysOn, la instancia no admite la creación de grupos de disponibilidad y no puede hospedar ninguna réplica de disponibilidad. |
Cuentas | Analiza los requisitos para configurar correctamente las cuentas en que se ejecuta SQL Server . |
Puntos finales | Analiza cómo diagnosticar problemas relativos al extremo de creación de reflejo de la base de datos de una instancia de servidor. |
Nombre del sistema | Resume las alternativas para especificar el nombre del sistema de una instancia de servidor en una dirección URL de punto de conexión. |
Acceso de red | Documenta el requisito de que cada instancia de servidor que hospeda una réplica de disponibilidad debe tener acceso al puerto de cada una de las demás instancias de servidor en TCP. |
Acceso al extremo (error 1418 de SQL Server) | Contiene información sobre este mensaje de error de SQL Server . |
Error de unión de la base de datos (error 35250 de SQL Server) | Se discuten las posibles causas y la resolución de una falla al unir bases de datos secundarias a un grupo de disponibilidad ya que la conexión a la réplica principal no está activa. |
El enrutamiento de solo lectura no funciona correctamente | |
Tareas relacionadas | Contiene una lista de temas orientados a tareas en la Documentación en línea de SQL Server 2014 que son especialmente relevantes para resolver problemas de una configuración de grupo de disponibilidad. |
Contenido relacionado | Contiene una lista de recursos importantes externos a los Libros en pantalla de SQL Server . |
Los grupos de disponibilidad AlwaysOn no están habilitados
La característica Grupos de disponibilidad AlwaysOn debe estar habilitada en cada una de las instancias de SQL Server 2014. Para obtener más información, vea Habilitar y deshabilitar grupos de disponibilidad AlwaysOn (SQL Server).
Cuentas
Las cuentas en las que se ejecuta SQL Server deben estar configuradas correctamente.
¿Tienen las cuentas los permisos adecuados?
Si los socios se ejecutan bajo la misma cuenta de usuario de dominio, los inicios de sesión de usuario correctos existen automáticamente en ambas bases de datos maestras. Esto simplifica la configuración de seguridad de la base de datos y se recomienda.
Si dos instancias de servidor se ejecutan como cuentas diferentes, el login de cada cuenta debe crearse en master en la instancia del servidor remoto, y a esos logins deben concedérseles permisos CONNECT para conectarse al extremo de reflejo de la base de datos de esa instancia de servidor. Para obtener más información, consulte Configurar cuentas de inicio de sesión para reflejo de la base de datos o grupos de disponibilidad AlwaysOn (SQL Server).
Si SQL Server se ejecuta como una cuenta integrada, como sistema local, servicio local o servicio de red, o una cuenta de nondomain, debe usar certificados para la autenticación de puntos de conexión. Si las cuentas de servicio utilizan cuentas de dominio en el mismo dominio, puede elegir conceder acceso CONNECT para cada cuenta de servicio en todas las ubicaciones de réplica o puede utilizar certificados. Para obtener más información, veaUsar certificados para punto de conexión de reflejo de la base de datos (Transact-SQL).
Puntos de conexión
Los extremos deben estar configurados correctamente.
Asegúrese de que cada instancia de SQL Server que vaya a hospedar una réplica de disponibilidad (cada ubicación de réplica) tenga un punto de conexión de creación de reflejo de la base de datos. Para determinar si existe un punto de conexión de reflejo de base de datos en una instancia de servidor determinada, use la vista de catálogo sys.database_mirroring_endpoints. Para obtener más información, vea Crear un punto de conexión de creación de reflejo de la base de datos para la autenticación de Windows (Transact-SQL) o Permitir que un punto de conexión de creación de reflejo de la base de datos use certificados para conexiones salientes (Transact-SQL).
Compruebe que los números de puerto son correctos.
Para identificar el puerto asociado actualmente al punto de conexión de reflejo de la base de datos de una instancia de servidor, utilice la siguiente instrucción Transact-SQL:
SELECT type_desc, port FROM sys.tcp_endpoints; GO
En el caso de los problemas de configuración de grupos de disponibilidad AlwaysOn que son difíciles de explicar, se recomienda inspeccionar cada instancia del servidor para determinar si está escuchando en los puertos correctos. Para obtener información sobre cómo comprobar la disponibilidad del puerto, consulte MSSQLSERVER_1418.
Asegúrese de que se han iniciado los extremos (STATE=STARTED). En cada una de las instancias de servidor, utilice la siguiente instrucción Transact-SQL.
SELECT state_desc FROM sys.database_mirroring_endpoints
Para obtener más información sobre la columna state_desc, consulte sys.database_mirroring_endpoints (Transact-SQL).
Para iniciar un punto de conexión, utilice la siguiente instrucción Transact-SQL:
ALTER ENDPOINT Endpoint_Mirroring STATE = STARTED AS TCP (LISTENER_PORT = <port_number>) FOR database_mirroring (ROLE = ALL); GO
Para obtener más información, vea ALTER ENDPOINT (Transact-SQL).
Asegúrese de que el inicio de sesión del otro servidor dispone de permiso CONNECT. Para determinar quién tiene permiso CONNECT para un punto de conexión, utilice la siguiente instrucción Transact-SQL en cada instancia de servidor
SELECT 'Metadata Check'; SELECT EP.name, SP.STATE, CONVERT(nvarchar(38), suser_name(SP.grantor_principal_id)) AS GRANTOR, SP.TYPE AS PERMISSION, CONVERT(nvarchar(46),suser_name(SP.grantee_principal_id)) AS GRANTEE FROM sys.server_permissions SP , sys.endpoints EP WHERE SP.major_id = EP.endpoint_id ORDER BY Permission,grantor, grantee; GO
Nombre del sistema
Para el nombre del sistema de una instancia de servidor en una dirección URL de punto de conexión, puede usar cualquier nombre que identifique inequívocamente el sistema. La dirección del servidor puede ser un nombre del sistema (si los sistemas están en el mismo dominio), un nombre de dominio completo o una dirección IP (preferiblemente, una dirección IP estática). Se garantiza que el uso del nombre de dominio completo funcione. Para obtener más información, vea Especificar la dirección URL del punto de conexión - Agregar o modificar una réplica de disponibilidad (SQL Server).
Acceso a la red
Cada instancia de servidor que hospeda una réplica de disponibilidad debe tener acceso al puerto de cada una de las demás instancias de servidor en TCP. Esto es especialmente importante si las instancias del servidor están en dominios diferentes que no confían entre sí (dominios que no son de confianza).
Acceso al extremo (error 1418 de SQL Server)
Este mensaje de SQL Server indica que la dirección de red del servidor especificada en la dirección URL del punto de conexión no se puede alcanzar o no existe, y sugiere que compruebe el nombre de la dirección de red y vuelva a emitir el comando. Para obtener más información, consulte MSSQLSERVER_1418.
Error de unión de la base de datos (error 35250 de SQL Server)
En esta sección se describen las posibles causas y la resolución de un error al unir las bases de datos secundarias al grupo de disponibilidad porque la conexión a la réplica principal no está activa.
Resolución:
Compruebe la configuración del firewall para ver si permite la comunicación del puerto de punto de conexión entre las instancias del servidor que hospedan la réplica principal y la réplica secundaria (puerto 5022 de forma predeterminada).
Compruebe si la cuenta de servicio de red tiene permiso de conexión al punto de conexión.
El enrutamiento de solo lectura no funciona correctamente
Compruebe los valores de configuración siguientes y corrijalos si es necesario.
En... | Acción | Comentarios | Vínculo | |
---|---|---|---|---|
![]() |
Réplica principal actual | Asegúrese de que el agente de escucha del grupo de disponibilidad está en línea. |
Para comprobar si el agente de escucha está en línea:SELECT * FROM sys.dm_tcp_listener_states; Para reiniciar un agente de escucha sin conexión: ALTER AVAILABILITY GROUP myAG RESTART LISTENER 'myAG_Listener'; |
sys.dm_tcp_listener_states (Transact-SQL) ALTERAR GRUPO DE DISPONIBILIDAD (Transact-SQL) |
![]() |
Réplica principal actual | Asegúrese de que el READ_ONLY_ROUTING_LIST solo contiene instancias de servidor que hospedan una réplica secundaria legible. |
Para identificar réplicas secundarias legibles: sys.availability_replicas (secondary_role_allow_connections_desc columna) Para consultar una lista de enrutamiento de solo lectura: sys.availability_read_only_routing_lists Para cambiar una lista de enrutamiento de solo lectura: ALTER AVAILABILITY GROUP |
sys.availability_replicas (Transact-SQL) sys.disponibilidad_solo_lectura_enrutamiento_listas (Transact-SQL) ALTERAR GRUPO DE DISPONIBILIDAD (Transact-SQL) |
![]() |
Cada réplica del read_only_routing_list | Asegúrese de que el firewall de Windows no está bloqueando el puerto de READ_ONLY_ROUTING_URL. | - | Configurar Firewall de Windows para el acceso al motor de base de datos |
![]() |
Cada réplica en la lista_de_enrutamiento_solo_lectura | En el Administrador de configuración de SQL Server, compruebe que: La conectividad remota de SQL Server está habilitada. TCP/IP está habilitado. Las direcciones IP están configuradas correctamente. |
- |
Ver o cambiar las propiedades del servidor (SQL Server) Configurar un servidor para que escuche en un puerto TCP específico (Administrador de configuración de SQL Server) |
![]() |
Cada réplica del read_only_routing_list | Asegúrese de que el READ_ONLY_ROUTING_URL (TCP://system-address :port) contiene el nombre de dominio completo (FQDN) y el número de puerto correctos. |
- |
Cálculo de read_only_routing_url para AlwaysOn sys.availability_replicas (Transact-SQL) ALTERAR GRUPO DE DISPONIBILIDAD (Transact-SQL) |
![]() |
Sistema cliente | Compruebe que el controlador cliente admite el enrutamiento de solo lectura. | - | Conectividad de cliente AlwaysOn (SQL Server) |
Tareas relacionadas
Creación y configuración de grupos de disponibilidad (SQL Server)
Crear un extremo de reflejo de la base de datos para la autenticación de Windows (Transact-SQL)
Preparar manualmente una base de datos secundaria para un grupo de disponibilidad (SQL Server)
Solucionar problemas de una operación Add-File fallida (Grupos de Disponibilidad AlwaysOn)
Contenido relacionado
Visualización de eventos y registros de un clúster de conmutación por error
Blog del equipo alwaysOn de SQL Server: blog oficial del equipo alwaysOn de SQL Server
Véase también
Seguridad de transporte para la creación de reflejo de base de datos y los grupos de disponibilidad AlwaysOn (SQL Server)Configuración de red del clienteRequisitos previos, restricciones y recomendaciones para grupos de disponibilidad AlwaysOn (SQL Server)