科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道在unix下定时执行oracle的sql方法

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

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

  在linux,有多种方式可以实现定时运行,使用最灵活的应该是crontab,   在使用crontab必须特别注意环境变量问题,在此以执行oracle的sqlplus为例,   说明crontab的使用方法。

作者:中国IT实验室 来源:中国IT实验室 2007年10月7日

关键字: 数据库 ORACLE

  • 评论
  • 分享微博
  • 分享邮件

  在linux,有多种方式可以实现定时运行,使用最灵活的应该是crontab,
  在使用crontab必须特别注意环境变量问题,在此以执行oracle的sqlplus为例,
  说明crontab的使用方法。
  
  1:crontab 使用方法:
  crontab [ -e | -l | -r ] 文件名
  -e:编辑任务
  -l:显示任务信息
  -r:删除定时执行任务信息
  
  2:crontab中处理的文件格式为
  分钟 小时 日期 月 星期 执行的文件名
  *代表所有条件
  5 * * * * rem /home/oracle/execsql
  代表每个小时的5分钟时执行/home/oracle/execsql文件
  
  3:对于sql等需要在特定的环境变量下运行的命令,在执行文件中必须列出。
  如在oracle下执行sqlplus,必须按以下格式编写:
  $ cat execsql
  ORACLE_HOME=/ora815;export ORACLE_HOME
  ORACLE_OWNER=oracle;export ORACLE_OWNER
  ORACLE_SID=ora815;export ORACLE_SID
  ORACLE_BASE=/ora815/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_AMERICA.ZHS16CGB231280;export NLS_LANG
  /ora815/bin/sqlplus test1/test1 @test1.ext
  (执行@test1.ext文件,数据库的用户名/密码为test1/test1)
  
  其中要求execsql为可执行的程序
  $ ls -al execsql
  -rwxr-xr-x 1 oracle dba 374 Oct 07 15:17 execsql
  
  

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件