Create Programs

1. Los Programs nos permiten crear procedimientos estándar que pueden ser invocados por los Jobs. Una de las ventajas es poder tener una librería de programas predifinidos, y poder crear Jobs que invoquen dichos programas con distintos argumentos.

2. Nosotros vamos a aprovechar este ejercicio para crear un Program que ejecuta un script externo. Para ello creamos primero el script que va a invocar el programa en la máquina OCM.

vi /tmp/test_program.sh
# Añadimos las siguientes lineas
#!/bin/bash
echo `date` > /tmp/test_program.out

# Damos permisos de ejecución
# Por dejecto, el script externo se ejecuta con el usuario y grupo "nobody"
# Se puede modificar editando el fichero $ORACLE_HOME/rdbms/admin/externaljob.ora (propietario root)
chmod 777 /tmp/test_program.sh

Creamos el Program y el Job.

Click “Targets” ->
-> Click “Databases” ->
-> Click “OCM” ->
-> Click “Server” ->
-> Click “Programs” ->
-> Click “Create” ->
-> Name = “PROGRAM_TEST” ->
-> Enabled = “Yes” ->
-> Executable Name = “/tmp/test_program.sh” ->
-> Click “OK”

Click “Targets” ->
-> Click “Databases” ->
-> Click “OCM” ->
-> Click “Server” ->
-> Click “Jobs” ->
-> Click “Create” ->
-> Name = “JOB_TEST” ->
-> Click “Change Command Type” ->
-> Seleccionamos “Program Name” ->
-> Program Name = “SYSTEM” . “PROGRAM_TEST” ->
-> Click “OK” ->
-> Click “OK”

3. Borramos ambos objetos (Program y Job).

Seleccionamos “JOB_TEST” ->
-> Click “Delete” ->
-> Seleccionamos “Drop the job and stop any running instance.” ->
-> Click “Yes”

En la ventana de Programs ->
-> Seleccionamos “PROGRAM_TEST” ->
-> Click “Delete” ->
-> Click “Yes”