[root@localhost home]# vi test.sh #!/bin/sh Oracle_HOME=/oracle/ora10/product export ORACLE_HOME userpwd=test/test@10.11.0.235:1521/ora10g $ORACLE_HOME/bin/sqlplus -S $userpwd <<EOF alter session set nls_date_format="yyyy-mm-dd hh24:mi:ss"; INSERT INTO test values(1,"test"); COMMIT; EOF exit;
以上test.sh文件中必须设置ORACLE_HOME环境变量,否则加入到crontab 里不能正常执行(如把环境变量注释掉:#ORACLE_HOME=/oracle/ora10/product #export ORACLE_HOME ),即使在sqlplus前加绝对路径/oracle/ora10/product/bin也不行,crontab文件如下test1_crond ,日志见/var/log/cron[root@localhost cron.d]# vi test1_crond * * * * * root sh /home/test.sh >/home/test.log ~ ~ SQL> conn test/test Connected. SQL> select * from test; ID NAME ---------- -------------------- 1 test 1 test 1 test SQL>[root@localhost cron.d]# tail -f /var/log/cron Aug 17 14:03:01 localhost crond[10718]: (root) CMD (sh /home/x.sh) Aug 17 14:03:01 localhost crond[10720]: (root) CMD (sh /home/test.sh >/home/test.log) Aug 17 14:04:01 localhost crond[11102]: (root) CMD (sh /home/x.sh) Aug 17 14:04:01 localhost crond[11103]: (root) CMD (sh /home/test.sh >/home/test.log) Aug 17 14:05:01 localhost crond[11449]: (root) CMD (sh /home/x.sh) Aug 17 14:05:01 localhost crond[11452]: (root) CMD (sh /home/test.sh >/home/test.log)Oracle 11gR2数据库dump、trace、log文件的变化ORA-1652 临时表空间满了导致新会话数据不能入库诊断案例相关资讯 Crontab