Solución de problemas de Oracle Exadata Database Service on Cloud@Customer Systems

En estos temas, se tratan algunos de los problemas comunes que se pueden experimentar y cómo abordarlos.

Fallos de aplicación de parches en sistemas Oracle Exadata Database Service on Cloud@Customer

Las operaciones de aplicación de parches pueden fallar por diversos motivos. Normalmente, una operación falla porque un nodo de base de datos está caído, no hay suficiente espacio en el sistema de archivos o la máquina virtual no puede acceder al almacén de objetos.

Determinación del problema

En la consola, puede identificar una operación de aplicación de parches fallida consultando el historial de parches de un sistema Oracle Exadata Database Service on Cloud@Customer o una base de datos individual.

Un parche que no se ha aplicado correctamente muestra el estado Failed (Con fallos) e incluye una breve descripción del error que ha provocado el fallo. Si el mensaje de error no contiene suficiente información para sugerirle una solución, puede usar la CLI y los archivos log de la base de datos para recopilar más datos. A continuación, consulte la sección correspondiente de este tema para encontrar una solución.

Solución de problemas y diagnóstico

Diagnostique las incidencias más comunes que se pueden producir durante el proceso de aplicación de parches de cualquiera de los componentes de Oracle Exadata Database Service on Cloud@Customer.

Incidencias en VM del servidor de base de datos

Una o varias de las siguientes condiciones en la VM del servidor de base de datos pueden provocar fallos en las operaciones de aplicación de parches.

Problemas de conectividad de la VM del servidor de base de datos

Las herramientas en la nube dependen de una configuración de conectividad y de red adecuada entre las máquinas virtuales de un cluster de VM. Si la configuración no está definida correctamente, puede que se produzcan fallos en todas las operaciones que requieren procesamiento entre nodos. Un ejemplo puede ser el no poder descargar los archivos necesarios para aplicar un parche determinado.

En ese caso, puede realizar las siguientes acciones:

  • Verifique que la configuración de DNS es correcta de forma que las direcciones de las máquinas virtuales relevantes se puedan resolver en el cluster de VM.
  • Consulte los logs de las herramientas en la nube relevantes, como se indica en la sección Obtención de asistencia adicional, y póngase en contacto con los Servicios de Soporte Oracle para obtener más ayuda.
Problemas de Oracle Grid Infrastructure

Una o varias de las siguientes condiciones en Oracle Grid Infrastructure pueden provocar fallos en las operaciones de aplicación de parches.

Oracle Grid Infrastructure está caído

Oracle Clusterware permite a los servidores comunicarse entre sí para que puedan funcionar como una unidad colectiva. El programa de software de cluster debe estar activo y en ejecución en el cluster de VM para que se completen las operaciones de aplicación de parches. En ocasiones, puede que necesite reiniciar Oracle Clusterware para resolver un fallo en la aplicación de parches.

En esos casos, verifique el estado de Oracle Grid Infrastructure de la siguiente manera:
./crsctl check cluster
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
Si Oracle Grid Infrastructure está caído, reinícielo ejecutando los siguientes comandos:
crsctl start cluster -all
crsctl check cluster
Problemas de las bases de datos de Oracle

Un estado de base de datos incorrecto puede producir fallos en la aplicación de parches.

Oracle Database está caído

La base de datos debe estar activa y en ejecución en todos los nodos activos para que las operaciones de aplicación de parches se puedan completar correctamente en todo el cluster.

Utilice el siguiente comando para comprobar el estado de la base de datos y asegúrese de que se resuelven los problemas que pueden haber ocasionado que la base de datos esté en un estado incorrecto:
srvctl status database -d db_unique_name -verbose

El sistema devuelve un mensaje que incluye el estado de la instancia de base de datos. El estado de la instancia debe ser Abierto para que la operación de aplicación de parches se realice correctamente.

Si la base de datos no se está ejecutando, utilice el comando siguiente para iniciarla:
srvctl start database -d db_unique_name -o open

Obtención de asistencia adicional

Si no ha podido resolver el problema con la información de este tema, siga los procedimientos siguientes para recopilar la información de diagnóstico y de bases de datos relevante. Una vez recabada la información, póngase en contacto con los Servicios de Soporte Oracle.

Temas relacionados

Recopilación de logs de herramientas en la nube

Utilice los archivos log relevantes que podrían ayudar a los Servicios de Soporte Oracle en una investigación más a fondo y la resolución de un problema determinado.

Logs de DBAASCLI

/var/opt/oracle/log/dbaascli
  • dbaascli.log

Recopilación de diagnósticos de Oracle

Para recopilar los logs y la información de diagnóstico relevantes de Oracle, ejecute el comando dbaascli diag collect.

Para obtener más información sobre el uso de esta utilidad, consulte Herramientas DBAAS: uso de dbaascli para recopilar registros de herramientas de nube y realizar una comprobación del sistema de las herramientas de nube.

La actualización del sistema operativo de VM se bloquea durante el vaciado de conexiones a base de datos

Descripción: se trata de una incidencia intermitente. Durante la actualización del sistema operativo de máquina virtual con Grid Infrastructure 19c y las bases de datos en ejecución, dbnodeupdate.sh espera a que RHPhelper vacíe las conexiones, lo cual no progresará debido a un bug conocido "DBNODEUPDATE.SH HANGS IN RHPHELPER TO DRAIN SESSIONS AND SHUTDOWN INSTANCE".

Síntomas: existen dos posibles resultados como consecuencia de este bug:
  1. La actualización del sistema operativo de VM se bloquea en rhphelper
    • Bloquea la automatización
    • Algunas o ninguna de las conexiones a base de datos se habrán vaciado y algunas o todas las instancias de base de datos seguirán en ejecución.
  2. La actualización del sistema operativo de VM no vacía las conexiones a base de datos porque rhphelper se ha bloqueado
    • No bloquea la automatización
    • Se completan algunos o ninguno de los vaciados de conexiones a base de datos

/var/log/cellos/dbnodeupdate.trc lo mostrará en la última línea:

(ACTION:) Executing RHPhelper to drain sessions and shutdown instances. 
(trace:/u01/app/grid/crsdata/scaqak04dv0201/rhp//executeRHPDrain.150721125206.trc)
Acción:
  1. Cambie a la versión 19.11 de Grid Infrastructure o a una versión superior.

    (O BIEN)

    Desactive rhphelper antes de actualizarlo y vuelva a activarlo después de actualizarlo.

    Para desactivar antes de iniciar la actualización:
    /u01/app/19.0.0.0/grid/srvm/admin/rhphelper /u01/app/19.0.0.0/grid 19.10.0.0.0 -setDrainAttributes ENABLE=false
    Para activar una vez completada la actualización:
    /u01/app/19.0.0.0/grid/srvm/admin/rhphelper /u01/app/19.0.0.0/grid oracle-home-current-version -setDrainAttributes ENABLE=true

    Si desactiva rhphelper, no se vaciará ninguna conexión a base de datos antes de que se cierren los servicios y las instancias de base de datos en un nodo antes de que se actualice el sistema operativo.

  2. Si ha olvidado desactivar RHPhelper y no hay ningún progreso en el cambio de versión y se bloquea, se ha observado que se debe a que el vaciado de los servicios está tardando mucho tiempo:
    1. Inspeccione el archivo de rastreo /var/log/cellos/dbnodeupdate.trc, que contiene un párrafo similar al siguiente:
      (ACTION:) Executing RHPhelper to drain sessions and shutdown instances. 
      (trace: /u01/app/grid/crsdata/<nodename>/rhp//executeRHPDrain.150721125206.trc)
    2. Abra el archivo de rastreo /var/log/cellos/dbnodeupdate.trc.
      Si rhphelper falla, el archivo de rastreo contiene el siguiente mensaje:
      "Failed execution of RHPhelper"
      Si rhphelper se bloquea, el archivo de rastreo contiene el siguiente mensaje:
      (ACTION:) Executing RHPhelper to drain sessions and shutdown instances.
    3. Identifique los procesos de rhphelper que se están ejecutando en el nivel del sistema operativo y termínelos.

      Hay dos comandos que tendrán la cadena "rhphelper" en el nombre: un shell Bash y el programa Java subyacente, que es en realidad rhphelper en ejecución.

      rhphelper se ejecuta como root, por lo que se debe terminar como root (sudo de opc).

      Por ejemplo:
      [opc@<HOST> ~] pgrep –lf rhphelper
      191032 rhphelper
      191038 java
      
      [opc@<HOST> ~] sudo kill –KILL 191032 191038
    4. Verifique que se mueve el archivo dbnodeupdate.trc se y que la pila de Grid Infrastructure del nodo está cerrada.

    Para obtener más información sobre RHPhelper, consulte Using RHPhelper to Minimize Downtime During Planned Maintenance on Exadata (ID de documento 2385790.1).

Fallo al agregar una VM a un cluster de VM

Descripción: al agregar una VM a un cluster de VM, es posible que encuentre la siguiente incidencia:
[FATAL] [INS-32156] Installer has detected that there are non-readable files in oracle home.
CAUSE: Following files are non-readable, due to insufficient permission oracle.ahf/data/scaqak03dv0104/diag/tfa/tfactl/user_root/tfa_client.trc
ACTION: Ensure the above files are readable by grid.

Causa: el instalador ha detectado un archivo de rastreo no legible, oracle.ahf/data/scaqak03dv0104/diag/tfa/tfactl/user_root/tfa_client.trc, creado por Autonomous Health Framework (AHF) en el directorio raíz de Oracle que provoca un fallo al agregar una VM de cluster.

AHF ejecutado como root ha creado un archivo trc con propiedad root que el usuario grid no puede leer.

Acción: asegúrese de que los archivos de rastreo de AHF son legibles para el usuario grid antes de agregar las VM a un cluster de VM. Para solucionar la incidencia de permiso, ejecute los siguientes comandos como root en todas las VM de cluster de VM existentes:
chown grid:oinstall /u01/app/19.0.0.0/grid/srvm/admin/logging.properties
chown -R grid:oinstall /u01/app/19.0.0.0/grid/oracle.ahf*
chown -R grid:oinstall /u01/app/grid/oracle.ahf*

No se ha actualizado la lista de nodos para las bases de datos con Data Guard activado

Descripción: la adición de una VM a un cluster de VM se realiza correctamente. Sin embargo, para las bases de datos con Data Guard activado, la nueva VM no se agrega a la lista de nodos en el archivo /var/opt/oracle/creg/<db>.ini.

Causa: las bases de datos con Data Guard activado no se ampliarán a la VM recién agregada. Por lo tanto, el archivo <db>.ini tampoco se actualizará porque la instancia de base de datos no está configurada en la nueva VM.

Acción: para agregar una instancia a las bases de datos principal y en espera y a las nuevas VM (sin Data Guard) y eliminar una instancia de un entorno de Data Guard, consulte la nota 2811352.1 de My Oracle Support.

Fallo de escalado fuera de línea de la CPU

Descripción: el escalado fuera de línea de la CPU falla con el siguiente error:
** CPU Scale Update **An error occurred during module execution. Please refer to the log file for more information

Causa: después de aprovisionar un cluster de VM, el archivo /var/opt/oracle/cprops/cprops.ini, generado automáticamente por la base de datos como servicio (DBaaS), no se actualiza con los parámetros common_dcs_agent_bindHost y common_dcs_agent_port y esto hace que falle el escalado fuera de línea de la CPU.

Acción: como usuario root, agregue manualmente las siguientes entradas en el archivo /var/opt/oracle/cprops/cprops.ini.
common_dcs_agent_bindHost=<IP_Address>
common_dcs_agent_port=7070
Nota

El valor common_dcs_agent_port es siempre 7070.
Ejecute el siguiente comando para obtener la dirección IP:
netstat -tunlp | grep 7070
Por ejemplo:
netstat -tunlp | grep 7070
tcp 0 0 <IP address 1>:7070 0.0.0.0:* LISTEN 42092/java
tcp 0 0 <IP address 2>:7070 0.0.0.0:* LISTEN 42092/java

Puede especificar una cualquiera de las dos direcciones IP, <IP address 1> o <IP address 2>, para el parámetro common_dcs_agent_bindHost.

La base de datos en espera no se puede reiniciar después del switchover en la configuración de Oracle Data Guard de Oracle Database 11g

Descripción: después de realizar el switchover, la nueva base de datos en espera (antigua principal) permanece cerrada y no se puede reiniciar.

Acción: después de realizar el switchover, realice lo siguiente:

  1. Reinicie la base de datos en espera con el comando srvctl start database -db <standby dbname>.
  2. Vuelva a cargar el listener como usuario grid en todos los nodos de cluster principal y en espera.
    • Para volver a cargar el listener utilizando la alta disponibilidad, descargue y aplique el parche 25075940 en el directorio raíz de Grid y, a continuación, ejecute lsnrctl reload -with_ha.
    • Para volver a cargar el listener, ejecute lsrnctl reload.

Después de volver a cargar el listener, verifique que los servicios <dbname>_DGMGRL se cargan en el listener mediante el comando lsnrctl status.

Para descargar el parche 25075940

  1. Conéctese a My Oracle Support.
  2. Haga clic en Parches y actualizaciones.
  3. Seleccione Número de bug en la lista desplegable Número/Nombre o número de bug (simple).
  4. Introduzca el número de bug 34741066 y, a continuación, haga clic en Buscar.
  5. En los resultados de búsqueda, haga clic en el nombre del parche más reciente.

    Se le redirigirá a la página Parche 34741066: LSNRCTL RELOAD -WITH_HA FAILED TO READ THE STATIC ENTRY IN LISTENER.ORA.

  6. Haga clic en Descargar.

El uso del puerto de listener de SCAN personalizado con Data Guard en una red de recuperación ante desastres provoca fallos de verificación de la asociación de Data Guard

Descripción: si el puerto del listener de SCAN para la red de cliente y la red de recuperación ante desastres (red de DR) son diferentes, la configuración de Data Guard (DG) falla durante la fase de verificación de la creación de la asociación de Data Guard.

Acción: utilice los mismos puertos del listener de SCAN (o puerto por defecto) en todas las redes. Para corregir el puerto del listener después de configurar el cluster, ejecute el comando GI home/bin/srvctl modify listener -listener listener_name -endpoints endpoints. Para obtener más información, consulte srvctl modify listener en la Guía de administración y despliegue de Oracle Real Application Clusters.

La creación de PDB falla después de mover la base de datos a un nuevo directorio raíz de base de datos (23ai)

Descripción: después de reubicar una base de datos en un directorio raíz de base de datos diferente, falla la creación de una nueva base de datos conectable (PDB). El servicio de PDB no se puede iniciar, lo que provoca el siguiente error:
[FATAL] [DBAAS-60022] Command '/u02/app/oracle/product/23.0.0.0/dbhome_3/bin/srvctl 'start' 'service' '-db' 'db23ano' '-service' 'db23ano_PDBJULY242.paas.oracle.com'' has failed on nodes [localnode].

Acción: si la versión de Grid Infrastructure es 23.4.0.24.05, actualice a la versión 23.5.0.24.07 para resolver este problema.

Fallo intermitente en la creación de PDB al crear varias PDB en paralelo

Descripción: la creación de PDB puede fallar para el subjuego de PDB cuando se crean varias PDB en paralelo.

Causa: es posible que la creación de la PDB observe el siguiente error de forma intermitente.
ORA-03113: end-of-file on communication channel

Acción: vuelva a intentar la creación de la PDB fallida.