linux

位置:IT落伍者 >> linux >> 浏览文章

在unix下定时执行oracle的sql方法


发布日期:2020年06月06日
 
在unix下定时执行oracle的sql方法

在linux有多种方式可以实现定时运行使用最灵活的应该是crontab

在使用crontab必须特别注意环境变量问题在此以执行oracle的sqlplus为例

说明crontab的使用方法

crontab 使用方法

crontab [ e | l | r ] 文件名

e:编辑任务

l:显示任务信息

r:删除定时执行任务信息

crontab中处理的文件格式为

分钟 小时 日期 月 星期 执行的文件名

*代表所有条件

* * * * rem /home/oracle/execsql

代表每个小时的分钟时执行/home/oracle/execsql文件

对于sql等需要在特定的环境变量下运行的命令在执行文件中必须列出

如在oracle下执行sqlplus必须按以下格式编写

$ cat execsql

ORACLE_HOME=/ora;export ORACLE_HOME

ORACLE_OWNER=oracle;export ORACLE_OWNER

ORACLE_SID=ora;export ORACLE_SID

ORACLE_BASE=/ora/app/oralce;export ORACLE_BASE

LD_LIBRARY_PATH=$ORACLE_HOME/lib;export LD_LIBRARY_PATH

PATH=$PATH:$ORACLE_HOME/bin:$LD_LIBRARY_PATH;export PATH

NLS_LANG=AMERICAN_AMERICAZHSCGB;export NLS_LANG

/ora/bin/sqlplus test/test @testext

(执行@testext文件数据库的用户名/密码为test/test)

其中要求execsql为可执行的程序

$ ls al execsql

rwxrxrx oracle dba Oct : execsql

               

上一篇:虚拟机RedHatLinux9安装Oralce9i全过程

下一篇:一些基础的 Linux 问题