使用dbms_scheduler调用shell脚本
来源:互联网 发布:ecshop微商城源码下载 编辑:程序博客网 时间:2024/06/10 04:57
--1,创建programbegin dbms_scheduler.create_program(program_name => 'lcy_test_prog', program_type => 'EXECUTABLE', program_action => '/lcytest/File_test.sh', enabled => true, comments => 'oracle database rman level 0 backup');end;
--2,创建schedule 每天凌晨运行一次begin dbms_scheduler.create_schedule(schedule_name => 'lcy_test_sche', repeat_interval => 'freq=daily; byhour=0; byminute=0; bysecond=0;', comments => 'oracle database rman level 0 backup schedule 1');end;
--3,创建job,此处若提示权限问题,则需要grant --grant CREATE EXTERNAL JOB to db-user;begin dbms_scheduler.create_job(job_name => 'lcy_test_job', program_name => 'lcy_test_prog', schedule_name => 'lcy_test_sche', enabled => true);end;
--4,执行job,一般来说此处必会提示错误:--ora-27369 job of type excutalble failed with exit code...--请参考文档:https://community.oracle.com/thread/557102--通俗来说,需要修改$ORACLE_HOME/rdbms/admin/externaljob.ora文件--将其中的run_user/run_group改为自己DB服务器的用户,并有权限可以执行externaljob.ora文件begin -- --DBMS_SCHEDULER.ENABLE('lcy_test_job'); -- dbms_scheduler.run_job(job_name => 'lcy_test_job'); -- --DBMS_SCHEDULER.DISABLE('lcy_test_job'); end;
-- All jobsselect * from user_scheduler_jobs;-- Get information to jobselect * from user_scheduler_job_log order by log_date desc;-- Show details on job runselect * from user_scheduler_job_run_details;
以下为报错列表:
274661 - can't get owner of or permissions of externaljob.ora file274662 - not running as root or externaljob.ora file is writable by group or other or externaljob.ora file not owned by root (can't switch user)
274663 - setting the group or effective group failed
274664 - setting the user or effective user failed
274665 - a user or group id was not changed successfully
274666 - cannot access or open externaljob.ora file
274667 - invalid run_user specified in externaljob.ora file
274668 - invalid run_group specified in externaljob.ora file
274669 - error parsing externaljob.ora file
274670 - extjobo is running as root user or group
参考文档:
http://blog.itpub.net/23135684/viewspace-777177/
Clarification on Externaljob.ora and Permissions (文档 ID 979186.1)
有问题基本上都是权限问题
NOTE:
1. Users using 11g should use the new method of specifying a credential which eliminates many of the issues mentioned in this note. External jobs which have a credential (available in 11g) run as the user specified in the credential.
2. Relinking the Binary (Using "relink all") might also change the permissions and ownership for files jssu,extjob,externaljob.ora.You need to manually change the permissions and ownership.As root user,please perform
# chown root $ORACLE_HOME/bin/extjob
# chmod 4750 $ORACLE_HOME/bin/extjob
# chown root $ORACLE_HOME/rdbms/admin/externaljob.ora
# chmod 640 $ORACLE_HOME/rdbms/admin/externaljob.ora
# chown root $ORACLE_HOME/bin/jssu
# chmod 4750 $ORACLE_HOME/bin/jssu
- 使用dbms_scheduler调用shell脚本
- 利用Oracle DBMS_SCHEDULER调用shell脚本文件
- DBMS_SCHEDULER使用
- 【如何使用shell 脚本调用java进程】
- 使用ssh登录shell脚本远程调用
- 使用php调用shell脚本同步文件
- MySQL使用UDF调用shell脚本
- linux c使用system调用shell脚本
- DBMS_SCHEDULER 的使用
- ORACLE DBMS_SCHEDULER使用
- java调用Shell脚本
- java调用Shell脚本
- JAVA 调用shell脚本
- Java 调用Shell脚本
- Python 调用shell脚本
- shell脚本调用java
- Java调用shell脚本
- python调用Shell脚本
- react-native试玩(26)-网页视图
- DiskLruCache
- 一元函数对象的使用例子
- UVA 11300 Spreading the Wealth
- 【Unity3D】 EventManager事件管理器
- 使用dbms_scheduler调用shell脚本
- LeetBoss
- 侧边栏添加区块-编辑丰富你的Magento边侧栏[添加显示区块]
- Angularjs实践之优化你的$watch
- Rotate Array
- 推荐这六本关于机器学习的书籍,并说说它们的优缺点
- Android Image 倒影
- R语言经典教材
- sql语法:inner join on, left join on, right join on详细使用方法