infra: BANNER verificar/ monitorizar los gurbjobs y pipes

Instancia: Conectada

  • Para ver la instancia conectada
Select instance_name from v$instance;

Pipes: estado

  • Verificar que existan 40 pipes
select * from gv$session where program like '%pip%';

Pipes: Pipes x instancia

  • inst_id: id de instancia
Select inst_id, count(*) from gv$session where program like '%pipe%' group by inst_id;

Reiniciar Gurjobs

En Oracle, GURJOB es una tabla estándar que forma parte del sistema Banner de Oracle. Banner es un conjunto de aplicaciones desarrollado por Ellucian para la gestión de instituciones educativas, y se basa en la base de datos Oracle.

La tabla GURJOB generalmente se utiliza para registrar y almacenar información relacionada con trabajos (jobs) y procesos que se ejecutan en Banner. Estos trabajos pueden incluir ejecuciones de procesos, informes, interfaces, etc. Es comúnmente usada en la arquitectura de Banner para gestionar trabajos y procesos en segundo plano, almacenar información de control sobre ejecuciones, parámetros utilizados, y el estado del trabajo.

Paso 1: Verificar estado

  • Deben haber dos gurbjobs, uno por servidor
select * from gv$session where program like '%gur%';

Paso 2: conectarse al servidor

ServidorServicioIPUsuarioConexión
BANNER9BATCHPRODProducción10.0.3.99r/aban12ssh 10.0.3.99 -l root
BANNER9BATCHDESADesarrollo10.0.3.34c/u4c baninst1/u_pick_itssh 10.0.3.34 -l cgi

Paso 3: Conexión usuario banjobs

  • El siguiente paso es conectarse como el usuario banjobs/ab12
su - banjobs

Paso 4: Reinicar Gurjobs

El comando .oraenv es una utilidad de Unix/Linux que se utiliza en sistemas Oracle para configurar el entorno de trabajo de la base de datos Oracle. Específicamente, permite cambiar el Oracle environment (entorno de Oracle) en una sesión de terminal para que puedas trabajar con una instancia particular de Oracle Database.

Cuando ejecutas .oraenv, realiza lo siguiente:

  1. Cambia la variable ORACLE_SID: Esto establece el identificador del sistema de Oracle (Oracle System Identifier) que identifica la instancia de Oracle con la que deseas trabajar.
  2. Configura otras variables de entorno: Establece las variables de entorno relacionadas con Oracle como:
    • ORACLE_HOME: la ruta al directorio donde está instalado Oracle.
    • PATH: para incluir los binarios de Oracle (para comandos como sqlplus).
    • LD_LIBRARY_PATH o LIBPATH: para bibliotecas compartidas necesarias.
  3. Carga el archivo de perfil de entorno: Si hay un archivo de perfil (.profile, .bash_profile, etc.) que contiene configuraciones específicas de Oracle, se carga para ajustar el entorno de la sesión.
  4. Ejecutamos
. oraenv
  • Esto nos pide
ORACLE_SID = [banjobs] ?

# Aquí debemos digitar alguna de las siguietes opciones

# Producción
BANNER9

# QA
QA19

# TRNG
TRNG
  • Luego puede que nos pida el ORACLE_HOME es que es la ruta donde se encuentra instalado el oracle
/u01/app/oracle/product/19.0.0/client_1
  • Resultado
ORACLE_BASE environment variable is not being set since this
information is not available for the current user ID banjobs.
You can set ORACLE_BASE manually if it is required.
Resetting ORACLE_BASE to its previous value or ORACLE_HOME
The Oracle base has been set to /u01/app/oracle/product/19.0.0/client_1
  • Al parecer estos valores se guardan o son utiliozados en
nano /u01/app/oracle/product/19.0.0/client_1/bin/oraenv
o 
/u01/app/ellucian/banner/QA/admin/banenv
/u01/app/ellucian/banner/TRNG/admin/banenv
/u01/app/ellucian/banner/BANNER9/admin/banenv
  • Una vez hecho esto debeos ir a alguna de las siguientes rutas
# Producción
cd /u01/banjobs/bin/BANNER9

# QA
cd /u01/banjobs/bin/QA19

# TRNG
cd /u01/banjobs/bin/TRNG
  • Aca se encuentran una serie de script

NOTA: Script start Gurjobs QA19

  • Contenido (Todos hacenlo mismo solo estan configurados para otros ambientes)
#!/bin/ksh
# gurstart_ANY.shl
#
. /etc/profile
ORAENV_ASK=NO; export ORAENV_ASK
ORACLE_SID=QA19; export ORACLE_SID
TWO_TASK=$ORACLE_SID; export TWO_TASK
# NEXT LINE Added by Edward Stoever, May 5, 2007
. /u01/app/oracle/product/19.0.0/client_1/bin/oraenv
. /u01/app/ellucian/banner/QA/admin/banenv

export NLS_LANG="LATIN AMERICAN SPANISH_AMERICA.AL32UTF8"
LOGFILE=$HOME; export LOGFILE
HOME=$HOME/gurjobs/$TWO_TASK; export HOME
cd $HOME

export TNS_ADMIN=/u01/banjobs/proxy_wallet_QA19/network_admin;
export ORAENV_ASK=NO;
DFLT_GENLPRD_PASS=u_pick_it; export DFLT_GENLPRD_PASS


sh $BANNER_LINKS/gurjobs.shl $TWO_TASK GURJOBS > $LOGFILE/gurjobs/LOGS/gurjobs_start_$TWO_TASK.log 2>&1 &

sleep 1
ps -ef | grep gurjobs | grep -v "grep"
#env > $LOGFILE/gurjobs/LOGS/env_$TWO_TASK.log
  • !/bin/ksh: Esto especifica que el script debe ejecutarse usando el intérprete Korn Shell
  • # gurstart_ANY.shl: nombre del script
  • . /etc/profile: cargar el profile Esto garantiza que se carguen todas las variables de entorno globales del sistema.
  • ORAENV_ASK=NO; export ORAENV_ASK: Aquí se establece la variable ORAENV_ASK en «NO» y se exporta. Esto se utiliza para evitar que el comando oraenv te pregunte interactivamente cuál es el SID de la base de datos.
  • ORACLE_SID=QA19; export ORACLE_SID: Establece el ORACLE_SID en QA19, lo que significa que el script está configurando el entorno para trabajar con la base de datos cuya instancia se identifica como QA19.
  • TWO_TASK=$ORACLE_SID; export TWO_TASK: Establece la variable TWO_TASK igual al valor de ORACLE_SID. TWO_TASK es una variable que Oracle utiliza para conectarse a una base de datos remota o local. En este caso, está siendo igualada a la base de datos local identificada por ORACLE_SID.
  • . /u01/app/oracle/product/19.0.0/client_1/bin/oraenv: Carga el script oraenv, que establece las variables de entorno específicas de Oracle, basadas en el valor de ORACLE_SID. Esto garantiza que el entorno esté completamente configurado para interactuar con Oracle.
  • . /u01/app/ellucian/banner/QA/admin/banenv: Carga otro script (banenv), que probablemente contiene configuraciones adicionales específicas del sistema Banner en este entorno.
  • export NLS_LANG=»LATIN AMERICAN SPANISH_AMERICA.AL32UTF8″: Establece la variable de entorno NLS_LANG, que define el conjunto de caracteres y la configuración regional que Oracle usará. Aquí se está configurando para usar español latinoamericano y el conjunto de caracteres AL32UTF8.
  • LOGFILE=$HOME; export LOGFILE: Establece la variable LOGFILE en el valor actual de $HOME (el directorio de inicio del usuario que ejecuta el script). Esta variable se utilizará para definir dónde se almacenarán los archivos de registro.
  • HOME=$HOME/gurjobs/$TWO_TASK; export HOME: Redefine la variable HOME para que apunte al directorio $HOME/gurjobs/$TWO_TASK, que es un directorio específico relacionado con los trabajos de GUR. Se exporta la variable para que esté disponible en otros comandos.
  • cd $HOME: Cambia el directorio actual a $HOME, que se estableció en la línea anterior.
  • export TNS_ADMIN=/u01/banjobs/proxy_wallet_QA19/network_admin;:Establece la variable TNS_ADMIN, que le dice a Oracle dónde encontrar los archivos de red (como tnsnames.ora, que define las conexiones a bases de datos). Apunta a una ruta específica.
  • export ORAENV_ASK=NO; Vuelve a establecer la variable ORAENV_ASK para asegurarse de que el script no solicite interactuar.
  • DFLT_GENLPRD_PASS=u_pick_it; export DFLT_GENLPRD_PASS: Establece una contraseña predeterminada (probablemente ficticia aquí) en la variable DFLT_GENLPRD_PASS y la exporta para que esté disponible en otros procesos.
sh $BANNER_LINKS/gurjobs.shl $TWO_TASK GURJOBS > $LOGFILE/gurjobs/LOGS/gurjobs_start_$TWO_TASK.log 2>&1 &

Ejecuta el script gurjobs.shl (probablemente otro script de trabajo relacionado con GURJOBS) en segundo plano (&).

  • $BANNER_LINKS: Probablemente un directorio que contiene scripts de Banner.
  • $TWO_TASK y GURJOBS son parámetros pasados al script gurjobs.shl.
  • Redirección de salida:
    • > $LOGFILE/gurjobs/LOGS/gurjobs_start_$TWO_TASK.log redirige la salida estándar a un archivo de registro.
    • 2>&1 redirige los errores estándar al mismo archivo de registro.
  • sleep 1: Espera 1 segundo antes de continuar, lo que probablemente da tiempo a que el script que se ejecuta en segundo plano comience a ejecutarse.
  • ps -ef | grep gurjobs | grep -v «grep»: Este comando busca todos los procesos que contienen el nombre gurjobs y excluye la propia búsqueda (grep -v "grep"). Esto sirve para verificar si el proceso gurjobs está en ejecución.

Continuamos

  • Ahora ubicados en la rutas
# Producción
cd /u01/banjobs/bin/BANNER9

# QA
cd /u01/banjobs/bin/QA19

# TRNG
cd /u01/banjobs/bin/TRNG
  • Debemos ejecutar el script
# Producción
. gurstart_BANNER9_RAC.shl

# QA
. gurstart_QA19.shl

# TRNG
. gurstart_TRNG.shl
  • Si para QA19 y TRNG les pide la ruta ORACLE_HOME debe digitar
/u01/app/oracle/product/19.0.0/client_1

Paso 5: Verificar estado

  • Deben haber dos gurbjobs, uno por servidor
select * from gv$session where program like '%gur%';