MSSQL_ENG020554
Detalles del mensaje
Nombre del producto |
SQL Server |
Versión del producto |
9.0 |
Número de compilación del producto |
9.00.1399.60 |
Id. de evento |
20554 |
Origen del evento |
MSSQLSERVER |
Componente |
SQL Server Database Engine (Motor de base de datos de SQL Server) |
Nombre simbólico |
|
Texto del mensaje |
El agente de réplica no ha registrado un mensaje de progreso en %ld minutos. Esto podría indicar que un agente no responde o una gran actividad en el sistema. Compruebe que se están replicando los registros en el destino y que las conexiones al suscriptor, publicador y distribuidor están activas. |
Explicación
El trabajo Comprobación de agentes de réplica se ejecuta con un intervalo especificado (10 minutos de manera predeterminada) para comprobar el estado de cada agente de réplica. Si un agente no ha registrado ningún progreso desde la última vez que se ejecutó el trabajo de comprobación del agente, se puede generar el error MSSQL_ENG020554. Se espera que el agente registre al menos los mensajes del historial incluso si no se produce ninguna otra actividad de réplica. Aunque el agente de réplica no está respondiendo como se esperaba, no necesariamente se ha detenido ni se ha producido un error (si se ha producido un error en un agente, se genera el error MSSQL_ENG020536).
Los siguientes problemas pueden dar como resultado que se genere el error MSSQL_ENG020554:
- El agente está ocupado.
Si el agente está demasiado ocupado para responder cuando el trabajo de comprobación del agente le sondea, el trabajo de comprobación del agente no podrá informar de si el agente de réplica está funcionando correctamente. Existen una serie de razones por las que el agente de réplica puede estar ocupado: puede que se estén replicando muchos datos o que haya problemas en el diseño o la configuración de la aplicación que den como resultado procesos que se ejecutan durante un período de tiempo prolongado. - El agente no puede iniciar sesión en uno de los equipos de la topología.
Todos los agentes tienen un parámetro -LoginTimeOut (establecido en 15 segundos de manera predeterminada), que controla el tiempo que un agente intenta iniciar una sesión en un nodo de réplica, por ejemplo un Agente de mezcla que inicia una sesión en el publicador. Si el valor -LoginTimeOut está establecido en un valor mayor que el intervalo en el que se ejecuta el trabajo de comprobación del agente de réplica, un problema de inicio de sesión podría ser la causa raíz del error: el error MSSQL_ENG020554 se genera antes de que el agente pueda generar un error más específico.
Acción del usuario
La acción requerida depende de la causa del error.
- Para todos los casos en los que se genera el error:
Compruebe los detalles del error en el Monitor de réplica y, a continuación, reinicie el agente si se ha detenido. Los detalles del error pueden ofrecer información adicional sobre el motivo por el que el agente no se estaba ejecutando correctamente. Si el agente se está ejecutando, no lo detenga y lo reinicie porque esto puede agravar el problema. Para obtener información sobre el modo de ver el estado del agente y los detalles del error en el Monitor de réplica, vea los siguientes temas:- Para el Agente de instantáneas, el Agente de registro del LOG y el Agente de lectura de cola, vea Cómo ver información y realizar tareas para los agentes asociados con una publicación (Monitor de réplica).
- Para el Agente de distribución y el Agente de mezcla, vea Cómo ver información y realizar tareas para los agentes asociados con una suscripción (Monitor de réplica).
- Si este error se genera con frecuencia porque el agente está ocupado:
Es posible que tenga que volver a diseñar la aplicación para que el agente pase menos tiempo procesando. Para obtener más información, vea Aumentar el rendimiento de la réplica.
Puede incrementar el intervalo en el que el estado del agente se comprueba utilizando el cuadro de diálogo Propiedades del trabajo. Para obtener información acerca del modo de obtener acceso a este cuadro de diálogo para trabajos de réplica, vea Cómo ver información y realizar tareas en un publicador (Monitor de réplica). - Si un agente no puede iniciar sesión en uno de los equipos de la topología:
Se recomienda que establezca -LoginTimeOut en un valor inferior al intervalo en el que se ejecuta el trabajo de comprobación del agente de réplica. En algunos casos, -LoginTimeOut se establece en un valor mayor debido a problemas de red que causan que los inicios de sesión agoten el tiempo de espera. Si -LoginTimeOut se establece en un valor menor, la réplica puede informar sobre errores más específicos, lo que le permite solucionar problemas de inicio de sesión que pueden estar causados por permisos, problemas de red u otros factores. Los parámetros del agente se pueden especificar en los perfiles del agente y en la línea de comandos. Para obtener más información, vea:- Cómo trabajar con perfiles de agente de réplica (SQL Server Management Studio)
- Cómo ver y modificar parámetros del símbolo del sistema de los agentes de réplica (SQL Server Management Studio)
- How to: Work with Replication Agent Profiles (Replication Transact-SQL Programming)
- Programming Replication Agent Executables.
Vea también
Conceptos
Causa y resolución de errores de réplica
Otros recursos
Administrar agentes de réplica
Replication Distribution Agent
Replication Log Reader Agent
Replication Merge Agent
Replication Queue Reader Agent
Replication Snapshot Agent