Oracle Base Database Service Upgrade Precheck Failed

Oracle Base Database Service Upgrade Precheck Failed

¿Cómo podemos ver el motivo de que un upgrade en un DB System falle?

La verdad es que no nos da mucha información para poder solucionarlo, debemos usar database cli y los ficheros de log para obtener más información.

Lo primero que tenemos que hacer, es obtener el identificador del job que ha fallado

[root@~]# dbcli list-jobs | tail -1
90ef6dc3-e463-4adb-97c9-cdd8a101980a     Server Patching Prechecks                                                   Friday, December 29, 2023, 12:25:33 CET Failure

Una vez obtenido el identificador del JOB que ha fallado, debemos obtener los detalles del job, en este caso al utilizar la opción -j nos lo muestra en formato json, pero si queremos que nos lo saque en detalle podemos hacer lo siguiente: “dbcli describe-job -i <jobId> -l Verbose

[root@~]# dbcli describe-job -i 90ef6dc3-e463-4adb-97c9-cdd8a101980a -j
{
  "jobId" : "90ef6dc3-e463-4adb-97c9-cdd8a101980a",
  "status" : "Failure",
  "message" : "DCS-10003:File '/home/oracle/.opciargfiledir_2023-12-29_12-29-33.0498/opciargfile_2023-12-29_12-29-33.0498.rsp' does not exist.Failed to create opc file. Please,\n refer dcs agent log for more information. ",
  "errorCode" : "DCS-10003",
  "reports" : [ {
    "taskId" : "TaskSequential_556730",
    "taskName" : "Server Patching Precheck",
    "taskResult" : "DCS-10003:File '/home/oracle/.opciargfiledir_2023-12-29_12-29-33.0498/opciargfile_2023-12-29_12-29-33.0498.rsp' does not exist.Failed to create opc file. Please,\n refer dcs agent log for more information. ",
    "startTime" : "December 29, 2023 12:25:33 PM CET",
    "endTime" : "December 29, 2023 12:29:33 PM CET",
    "status" : "Failure",
    "taskDescription" : null,
    "parentTaskId" : "TaskZLockWrapper_556734",
    "jobId" : "90ef6dc3-e463-4adb-97c9-cdd8a101980a",
    "tags" : [ ],
    "reportLevel" : "Error",
    "updatedTime" : "December 29, 2023 12:29:33 PM CET",
    "message" : null
  },

Esta línea "Failed to create opc file." nos da una pista del problema. Vamos a revisar el FS de home a ver si tiene espacio

[root@ociosgobsdb01 ~]# df -h | sort -nrk5 | head -1
Size  Used Avail Use% Mounted on
 960M  893M     0 100% /home

Lo tenemos lleno, procedemos a limpiar y ejecutamos de nuevo.

Listo, ya ha pasado de manera satisfactoria.