[转]ODI定时任务

[转]ODI定时任务
我当时就是按照这个文章学会如何配置ODI的定时任务的。具体地址:http://www.dbform.com/html/2008/516.html


对于设置ODI的定时执行场景,需要启动Scheduler Agent,在一个新的ODI安装完毕之后,默认的odiparams.bat文件中设置的是连接DEMO环境的数据库连接配置,如果我们在自己的数据库里创建了Master Repository和Work Repository,那么需要修改连接参数。

在我的测试环境中,我使用的是自己机器上Oracle 11g数据库,实例名是orcl11g,则需要做如下修改:

set ODI_SECU_DRIVER
= oracle.jdbc.driver.OracleDriver
set ODI_SECU_URL
= jdbc:oracle:thin:@localhost: 1521 :orcl11g
set ODI_SECU_USER
= snpm
set ODI_SECU_ENCODED_PASS
= b9yX4CpBkdmaP8Y3mYbaoye2p
set ODI_SECU_WORK_REP
= WORKREP1
set ODI_USER
= SUPERVISOR
set ODI_ENCODED_PASS
= hZypfAZQf.Yo8VWVI6HZzc

其中:
ODI_SECU_USER需要设置为创建Master Repository时候的用户名,在这里是snpm。
ODI_SECU_ENCODED_PASS需要用agent实用程序加密一下,用法是agent encode 
% PASSWORD %
ODI_SECU_WORK_REP设置为创建Work Repository时候起的名字。
ODI_USER默认是SUPERVISOR,这是连接ODI的用户名。
ODI_ENCODED_PASS默认是SUNOPSIS,也需要用agent encode加密之后的值。

设置完毕,启动Scheduler Agent,会遇到下面的错误:
java.lang.Exception: Agent is not declared in Topology Manager

我们还需要在Topology Manager 
->  Physical Architecture  ->  Agents里面创建一个Agent,填写Agent的名字,监听的机器,端口。如果需要设置Schedule,还需要在Topology Manager  ->  Logical Architecture  ->  Agents里面再创建一个Agent,将刚才创建的Physical Agent和此Logical Agent绑定在一起。

然后,在Designer 
->  Projects  ->  Scenarios  ->  Scheduling中创建一个执行计划,之后再次启动Scheduler Agent就OK了。

C:\OraODI\oracledi\bin
> agentscheduler “ - port = 20910 ″ “ - NAME = myFirstAgent”
A JDK is required to execute Web Services with OracleDI. You are currently using a JRE.
OracleDI: Starting Scheduler Agent …
Starting Oracle Data Integrator Agent…
Version : 
10.1 . 3.4 . 0  –  30 / 10 / 2007
Agent in scheduling mode
Number of items 
for  scheduled executions: 0
08 / 17 / 2008   02 : 58 : 09  PM(main): Server Launched
Aug 
17 2008   3 : 06 : 27  PM com.sunopsis.j.s a
INFO: Start Thread[
1001 @ 2008 / 08 / 17_03: 06 : 27 : 000 , 5 ,main] @ Aug  17 2008   3 : 06 : 27  PM

最后一行显示了在Schedule中定义的计划被执行成功。

在Windows操作系统中可以把Agent程序设置为Service,通过以下命令设置,其中倒数两个参数分别为Physical Agent Name和Agent Port:
agentservice.bat 
- - s myFirstAgent  20910

运行成功之后,将会产生OracleDI Agent Scheduler myFirstAgent这样命名的Windows服务。

通过以下命令可以删除创建的服务:
agentservice.bat 
- - s myFirstAgent



你可能感兴趣的:([转]ODI定时任务)