El supervisor de fallos del servidor de Oracle Database envía una solicitud al servidor para consultar su estado.
El supervisor de fallos de servidor se inicia con pmfadm para que el supervisor tenga alta disponibilidad. Si se detiene el supervisor por algún motivo, Process Monitor Facility (PMF) reinicia el supervisor de forma automática.
El supervisor de fallos de servidor consta de los siguientes procesos.
Un proceso de supervisión de fallos principal
Un sondeo de fallos del cliente de la base de datos
Esta sección incluye la siguiente información relativa al supervisor de fallos del servidor:
Funcionamiento del sondeo de fallos del cliente de la base de datos
Exploración de las alertas registradas por el supervisor de fallos de servidor
El supervisor de fallos principal determina que una operación es correcta si la base de datos está en línea y no da ningún error durante la transacción.
El sondeo de fallos del cliente de la base de datos realiza las siguientes operaciones:
Supervisa la partición de registros de rehacer archivados. Consulte Operaciones para supervisar la partición de registros de rehacer archivados.
Si el estado de la partición es correcto, determinar si la base de datos está operativa. Consulte Operaciones para determinar si la base de datos está operativa.
El sondeo utiliza el valor de timeout establecido en la propiedad del recurso Probe_timeout para determinar cuánto tiempo asignar para realizar correctamente el sondeo de Oracle Database.
El sondeo de fallos del cliente de la base de datos consulta la vista de rendimiento dinámica v$archive_dest a fin de determinar todos los posibles destinos para los archivos de rehacer archivados. Para cada destino activo, el sondeo determina si el estado del destino es correcto y si tiene suficiente espacio libre para almacenar los registros de rehacer archivados.
Si el estado del destino es correcto, el sondeo determina la cantidad de espacio libre en el sistema de archivos de destino. Si la cantidad de espacio libre es inferior al 10% de la capacidad del sistema de archivos y es inferior a 20 Mbytes, el sondeo imprime un mensaje en syslog.
Si el estado del destino es ERROR, el sondeo imprime un mensaje en syslog y desactiva las operaciones para determinar si la base de datos está operativa. Las operaciones permanecen desactivadas hasta que se borre la condición de error.
Si la partición de registros de rehacer archivados es correcta, el sondeo de fallos de cliente de base de datos consulta la vista de rendimiento v$sysstat para obtener estadísticas de rendimiento de la base de datos. Los cambios en estas estadísticas indican que la base de datos está operativa. Si estas estadísticas permanecen sin cambios en las consultas consecutivas, el sondeo de fallos realiza transacciones de bases de datos para determinar si la base de datos está operativa. Estas transacciones implican crear, actualizar y descartar una tabla en el espacio de tabla del usuario.
El sondeo de fallos del cliente de la base de datos realiza todas las transacciones como usuario de Oracle Database. El ID de este usuario se especifica durante la preparación de los nodos de Oracle Solaris Cluster, como se explica en Cómo preparar los nodos de Oracle Solaris Cluster.
Si una transacción de base de datos falla, el supervisor de fallos de servidor realiza una acción que depende del error que ha ocasionado el fallo. Para cambiar la acción que realiza el supervisor de fallos del servidor, personalice el supervisor de fallos del servidor, como se describe en Personalización del supervisor de fallos Servidor de HA para Oracle Database.
Si la acción requiere ejecutar un programa externo, el programa se ejecuta como proceso independiente en segundo plano.
Las acciones que puede realizar son las siguientes:
Ignorar. El supervisor de fallos de servidor ignora el error.
Detener la supervisión. El supervisor de fallos de servidor se detiene sin cerrar la base de datos.
Reiniciar. El supervisor de fallos del servidor detiene y reinicia la entidad especificada por el valor de la propiedad de extensión Restart_type.
Si la propiedad de extensión Restart_type está establecida en RESOURCE_RESTART, el supervisor de fallos del servidor reinicia el recurso del servidor de la base de datos. De manera predeterminada, el supervisor de fallos del servidor reinicia el recurso del servidor de la base de datos.
Si la propiedad de extensión Restart_type está establecida en RESOURCE_GROUP_RESTART, el supervisor de fallos del servidor reinicia el grupo de recursos del servidor de la base de datos.
Conmutar. El supervisor de fallos del servidor cambia el grupo de recursos del servidor de la base de datos a otro nodo del cluster. Si no hay ningún nodo disponible, el intento de conmutar el grupo de recursos falla. En tal caso, se reinicia el servidor de la base de datos.
Oracle Database registra las alertas en un archivo log de alertas. La ruta absoluta de este archivo se especifica mediante la propiedad de extensión alert_log_file del recurso SUNW.oracle_server. El supervisor de fallos de servidor explora el archivo de registro de alertas en busca de nuevas alertas en las siguientes ocasiones:
Cuando se inicia el supervisor de fallos de servidor
Cada vez que el supervisor de fallos de servidor consulta el estado del servidor
Si se define una acción para una alerta registrada que detecta el supervisor de fallos de servidor, el supervisor realiza la acción como respuesta a la alerta.
Las acciones preestablecidas para las alertas registradas aparecen enumeradas en Table B–2. Para cambiar la acción que realiza el supervisor de fallos del servidor, personalice el supervisor de fallos del servidor, como se describe en Personalización del supervisor de fallos Servidor de HA para Oracle Database.