sql >> Base de Datos >  >> RDS >> Oracle

CRON y SQLPLUS

El entorno de shell es muy importante para Oracle y casi no existe cuando se usa cron. Como siempre, hay varias formas de solucionar esto.

  1. usar rutas calificadas completas - un poco inflexible
  2. hacer el script para configurar su propio entorno de ejecución
  3. configure el entorno de ejecución en cron, cuando llame al script.

Una forma bastante estándar de configurar su entorno desde el script es usando el script oraenv, normalmente ubicado en /usr/local/bin

ORACLE_SID={your_sid}
ORAENV_ASK=NO
type oraenv >/dev/null 2>&1 || PATH=/usr/local/bin:$PATH
. oraenv
SQLPATH=$HOME/sql
export SQLPATH
do your stuff

desde la línea cron:

10 10 * * * $HOME/.profile;$HOME/bin/your_script >$HOME/log/your_script.log 2>&1

Esto supone que el .profile no es interactivo y exporta el entorno necesario.