ODI 11G初探-简单数据传输
ODI 11G初探-简单数据传输
ODI 11G初探—数据传输Start:2011.01.21Updated:2011.01.24王凡wangfanwf141732@woshiwangfan@1.简介ODI是oracle的数据抽取工具,11G融合了wls和jdev,与10G相比出现了教大幅度的变化。
1.1.环境信息OS:WINDOWSXP -32bitORACLE-DB:XE10GWLS:10.3.3ODI:11.1.1.3RCU:11.1.1.3PostgreSQL:9.0.21.2.相关文档2.软件准备2.1.软件下载Oracle相关页面下载Postgresql-jdbc:/download/postgresql-9.0-801.jdbc4.jar3.安装很郁闷开始等了很久才出现安装对话框,windows安装直接下一步!3.1.安装RCU解压完成后需要rcuHome\BIN目录下面打开rcu.bat文件,选择创建填写数据库连接信息作校验选择需要安装的数据库对象填写ODI数据库用户口令填写ODI相关对象信息,主资料库ID,口令,可以填写默认创建表空间开始创建表空间创建完毕后作创建对象前确实开始创建主资料库和工作资料库3.2.安装wls直接下一步,步骤略!3.3.安装odi解压后到disk1中点击setup,选择需要按照的ODI对象,本机上安装服务器和编辑器!作检查选择安装目录数据库连接信息ODI应用超级用户口令选择创建的工作资料库代理名称和代理端口操作系统会确认使用端口,可以关闭防火墙!确认安装信息开始安装开始配置!安装完毕!3.4.创建DOMAIN进入$ODI_HOME$\common\bin\运行config.cmd来创建domain填写domain的名称Weblogic域管理员口令选择java sdk填写数据库连接信息作数据库连接信息验证选择domain功能配置管理服务器信息配置受管理server计算机配置下一步到集群,由于不作集群,直接到下一步分配server服务安装配置概要开始创建域创建完毕3.5.启动服务器首先启动Adminerver然后到C:\Oracle\Middleware\wlserver_10.3\server\bin目录下面启动startNodeManager.cmd到C:\Oracle\Middleware\wlserver_10.3\common\nodemanager目录下面修改nodemanager.properties文件中StartScriptEnabled=true将false改为true,重启nodemanager进入weblogic console页面服务器->控制->启动odiServer3.6.创建工作资料库如果需要另外的工作资料库可以重新新建工作资料库在拓扑->选择资料档案库->右键工作资料档案库新建工作资料档案库在创建工作资料档案库中填写数据库连接信息绑定工作资料库属性,由于在安装的时候已经创建了WORKREP,现在创建的命名为WORKREP14.服务器配置4.1.添加安全性在目录C:\Oracle\Middleware\Oracle_ODI1\common\bin打开wlst.cmd输入命令connect('weblogic', 'weblogic1','t3://localhost:7001')连接上AdminServer后添加安全信息createCred(map="oracle.odi.credmap",key="SUPERVISOR", user="SUPERVISOR", password="wangfan", desc="Key for Supervisor")添加成功后断开连接disconnect()4.2.配置Agent在拓扑->物理体系架构->右键->新建代理输入代理需要的名称,发布的主机,端口在拓扑->逻辑体系架构->代理->新建逻辑代理输入逻辑代理的名称,选择对应的物理代理在新建的物理代理上右键->生成wls模板在wls模板生成向导,在代理信息选择默认,选择下一步选择需要一起部署的外部驱动和外部库文件选择主数据源选择输出路径点击完成在wls console页面中选择部署->安装选择刚刚生成的jar文件选择部署的server端选择默认的安全性选择完成测试agent是否成功运行成功5.简单数据传输做一个从PostgreSQL数据库到ORACLE数据库的数据传输5.1.建立PostgreSQL数据源将下载的驱动拷贝到win7:C:\Users\王凡\AppData\Roaming\odi\oracledi\userlibWinXP在目录C:\Documents and Settings\wangfan\ApplicationData\odi\oracledi\userlib然后启动ide,到拓扑结构->物理体系结构->PostgreSQL->右键->新建数据服务器定义连接的信息Jdbc连接属性测试连接连接成功在数据源上右键->新建物理方案在物理方案中选择数据库,方案5.2.建立ORACLE数据源建立oracle的数据源创建物理方案5.3.建立逻辑架构在拓扑->逻辑架构->右键->新建逻辑架构输入名字选择物理架构建立oracle的逻辑架构5.4.模型的建立在设计器->模型->新建模型在模型定义填写好名称->选择逻辑方案5.5.项目的建立在设计器->项目->新建项目在新建的项目填写项目名称在新建的项目下面->知识模块->右键->导入知识模块找到oracledi目录下面的xml-reference目录选择必要的模块导入完成后可以看到导入报告5.6.表反向打开刚刚建立的PostgreSQLModel的模型,选择逆向工程->定制。
ODI教程_自己总结
ODI教程ODI-- Oracle Data Integrator 是一个全面的数据集成平台,它能满足所有数据集成要求,涉及领域包括高容量、高性能批处理、事件驱动的少量传送集成过程以及支持SOA 的数据服务,在数据加载过程中也提供了数据质量检查,监控等功能,使数据更符合业务要求.提到ETL大家都很熟悉,数据提取,转换,加载的产品.我们平时自己也会开发一些类似ETL的小工具,把不同数据源汇总到一个目标数据源.但如果数据源很多,表也很多的话,这样的工作就是比较复杂的过程,我们需要做很多定制开发工作.而数据库之间的数据转换接口又很难满足我们对数据质量的要求,数据传输过程中的性能问题也会经常让人头疼.ODI的前身是Sunopsis公司的数据集成产品:2006年10月9日甲骨文宣布收购法国数据集成软件公司Sunopsis SASunopsis 公司产品用于把数据从不同来源例如数据库以及企业资源计划(ERP)等应用整合到一个目标地方,供数据分析和其他任务使用.Sunopsis总部在法国,成立1998年,客户有环球唱片集团德国公司,道达尔石油集团意大利子公司等.从技术角度来看看ODI特点:1.ODI本身是一种开放的价构,支持几乎所有目前流行的关系数据库.而且它是Java开发的产品,可以跨windows,unix平台,同时还能与中间件融合,可以融合到整个IT架构中.2.ODI推出ELT架构,与传统的ETL架构相比,少了中间的转换引擎.很多ETL产品都需要安装自己的转换引擎,而ODI直接调用源数据或目标数据服务器的数据库端.这样,实际数据处理,相当于数据库与数据库之间的连接处理,而数据库服务器处理效率远高于单独一台转换引擎做转换,因为它始终保持数据在数据库中处理.3.ODI有自己的知识模块,这些知识模块可以根据需求进行选择,而且这些知识模块支持开放式的设计,可以用自己熟悉的数据库语言或者Java语言来实现,可以更好地设计数据库流和业务要求.ODI可以结合数据库的优化模式,可以通过知识模型设计自己的知识模块,使处理数据更快.4.ODI 可以把数据发布成服务与SOA进行完美结合,使ODI可以结合到业务流程当中,通过Web服务的方式进行数据实时地查看和修改.ODI几个基本概念ODI安装配置时候,总是有逻辑架构、上下文、物理架构,还有就是Flow.还有一个就是被问的最多的,Staging Area是不是相当于ETL服务器的Transformation.个人理解:Flow:如果用Flow Control Option进行集成控制,必须选择update key.update key 是目标数据源中一个可以唯一识别一行的列集合。
OracleWeblogic11g基础知识
主要特点
支持多种编程语 言和框架
WebLogic Server 11g 支持 Java EE 和 SOA 标准,以及多种流行的 编程语言和框架,如 Java、JSP、Servlets、 EJB、JMS、JAX-WS 等。
集成开发环境 (IDE)
高可用性和可伸 缩性
WebLogic Server 11g 提供了一个集成的开发 环境(IDE),支持从设 计到部署的全过程开发, 包括代码编辑、调试、 测试和部署等。
WebLogic Server 11g 支持高可用性和可伸缩 性,通过集群和负载均 衡技术,提供对关键业 务应用的保护,确保应 用程序的可靠性和性能 。
指导用户如何配置审计和日志功能,以便于监控和安全分析。
安全策略配置
指导用户如何配置安全策略,包括 IP 限制、URL 过滤等。
安全漏洞与防护
1 2
常见安全漏洞
介绍 WebLogic Server 11g 中常见的安全漏洞, 如跨站脚本攻击(XSS)、SQL 注入等。
安全补丁
及时发布安全补丁,修复已知的安全漏洞,提高 系统的安全性。
ABCD
VisualVM:用于监控 Java应用程序的内存、线 程和CPU使用情况。
AWR报告:Oracle自动 工作负载仓库报告,提供 数据库性能的详细分析和 诊断。
性能优化案例
案例一
某银行核心业务系统在高峰期出现性 能瓶颈,通过调整JVM参数和 WebLogic参数,成功提高了系统响 应速度和吞吐量。
3
安全加固
通过配置安全策略、限制访问权限等措施,加固 系统的安全性,防止潜在的安全威胁。
Oracle 11g 数据加载与传输
9.1.1 Data Pump Export
数据泵导出(EXPDP)数据库实例
导出整个数据库:使用SYSTEM用户登录数据库,限制备 份的数据文件的大小为100M,一旦备份数据文件满,则自 动创建一个新的备份文件,使用了替换变量%U来实现备份 文件的自动创建,其中NOLOGFILE=Y即不记录备份过程。 命令:
F:\>expdp system/oracle@orcl dumpfile = pump_dir:mydb3_%u.dat filesize = 100m nologfile = y job_name =tom full = y
9.1.1 Data Pump Export
数据泵导出(EXPDP)数据库实例
9.1.1 Data Pump Export
FLASHBACK_SCN:允许在导出数据库时使用数据库闪回特性,此 时EXPDP使用规定的SCN进行闪回。 FULL:说明是否导出整个数据库对象,如果该参数为Y,说明导出数 据库的所有对象。 INCLUDE:说明要导出的特定对象类型,此时会导出该参数指定的 对象和与它们有依赖关系的对象。 JOB_NAME:为了便于管理运行的EXPDP作业设置当前作业的名字。 系统默认的命名格式为sys_operation_mode_nn。如导出SCOTT 用户的元数据,此时的作业名字为 "SCOTT"."SYS_EXPORT_SCHEMA_01"。 LOGFILE:说明在导出操作时记录导出过程的日志文件名,其默认名 为export.log,和导出文件保存在相同的目录下,即directory参数 指定的目录。 PARALLEL:说明在导出作业时最大的线程数,实现导出作业的并行 处理。也可以在作业运行总使用ATTACH改变并行度,PARALLEL参 数的默认值为1,表示使用单线程导出单独个备份文件,如果设置多 个工作线程,则要指定相同数量的备份文件,这样多个线程可以同时 写多个备份文件。给出一个例子,设置并行度为2。
数据库(10g to 11g)迁移流程
一.准备工作1.确认字符集为保证数据一致,新旧数据库的字符集必须统一。
查询语句:select * from V$NLS_PARAMETERS where parameter in('NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET');MES 10g2.确认用户角色首先在10g数据库上查询当前用户的角色,之后在11g库中查询刚才的用户所拥有的角色在11g库中是否存在。
查询语句:select * from dba_role_privs where grantee IN ('MESPROD','LBLPROD');每个应用用户均需查询,如果发现有系统默认没有的用户自建角色,需要在11g库中新建该角色,角色创建语句可以在10g库中由plsql developer软件进行自动生成。
3.新建表空间在11g数据库中新建以下表空间:CREATE TABLESPACE "TS_MES_DAT" SIZE 1G maxsize unlimited;CREATE TABLESPACE "TS_HISTORY_DAT" SIZE 1G maxsize unlimited;CREATE TABLESPACE "TS_MES_IDX" SIZE 1G maxsize unlimited;CREATE TABLESPACE "TS_HISTORY_IDX" SIZE 1G maxsize unlimited;CREATE TABLESPACE "TS_LABEL_DAT" SIZE 1G maxsize unlimited;CREATE TABLESPACE "TS_LABEL_IDX" SIZE 1G maxsize unlimited;4.新建用户在11g数据库中新建以下用户:-- Create the usercreate user MESPROD identified by mesproddefault tablespace USERStemporary tablespace TEMPprofile DEFAULT;-- Grant/Revoke object privilegesgrant execute on SYS.DBMS_DEFER_IMPORT_INTERNAL to MESPROD;grant execute on SYS.DBMS_EXPORT_EXTENSION to MESPROD;-- Grant/Revoke role privilegesgrant connect to MESPROD;grant dba to MESPROD;grant mw_role_dba to MESPROD;grant resource to MESPROD;-- Grant/Revoke system privilegesgrant create any index to MESPROD;grant create any table to MESPROD;grant drop any table to MESPROD;grant unlimited tablespace to MESPROD;-- Create the usercreate user LBLPROD identified by lblproddefault tablespace USERStemporary tablespace TEMPprofile DEFAULT;-- Grant/Revoke role privilegesgrant connect to LBLPROD;grant dba to LBLPROD;grant mw_role_dba to LBLPROD;grant resource to LBLPROD;-- Grant/Revoke system privilegesgrant unlimited tablespace to LBLPROD;二.导出数据库导出语句:(耗时约1小时,如果在服务器上导出,需要修改路径)expmesprod/*************.10.100:1521/MESfull=yfile=e:\mesprod.dmplog=e:\mesprodlog owner=(MESPROD,LBLPROD)导出过程中,遇到的报错及解决方式:报错1:EXP-00008: ORACLE error 6550 encounteredORA-06550: line 1, column 18:PLS-00201: identifier 'SYS.DBMS_DEFER_IMPORT_INTERNAL' must be declared 解决方法:GRANT EXECUTE ON SYS.DBMS_DEFER_IMPORT_INTERNAL TO mesprod ;GRANT EXECUTE ON SYS.DBMS_DEFER_IMPORT_INTERNAL TO lblprod ;报错2:EXP-00008: ORACLE error 6510 encounteredORA-06510: PL/SQL: unhandled user-defined exceptionORA-06512: at "SYS.DBMS_EXPORT_EXTENSION", line 50解决方法:GRANT EXECUTE ON SYS.DBMS_EXPORT_EXTENSION TO mesprod;GRANT EXECUTE ON SYS.DBMS_EXPORT_EXTENSION TO lblprod ;PS:导出过程中的exp00091的错误,通常修改nls_lang环境变量即可解决,可以直接忽略这个错误。
obiee11g简单入门详解
1、启动BI服务该启动过程会发费比较长的时间,该启动过程共启动了weblogic的consol、obiee的em和obiee,启动完成后会直接打开obiee的网页:http://机器名:9704/analytics.输入在安装obiee 时创建的用户名weblogic和对应的密码进行登陆2、利用BI 管理建立资料库并导入元数据(BI 管理主要是用来创建BI分析模型的工具,全称为:oracle bi administrator tool,使用该工具创建的资料库(.rpd文件)可以通过http://机器名:9704/analytics来进行访问(在后面会进行展现)创建的模型共有三层:物理层、逻辑层和展现层,只有这三层都实现后,obiee才能使用它,否则在登陆obiee网页的时候会登陆失败物理层:是定义与各类数据源的连接,如关系数据库、多维数据库、XML数据源及excel表等等,具体需要定义物理表的结构,主外健关系等等逻辑层:从物理层发展而来,需要定义具体的维表和事实表的主外健关系。
这是整个模型的核心层,需要兼顾技术和业务人员的思维角度展现层:从逻辑层发展而来,是最终用户看到的视图,所以所有对象的名称均需按照客户的要求命名,以便让他们完全理解各对象的含义,展现层中的一个文件夹对应“分析”中所看到的一个“主题区域”,会在以后的步骤里面展现出来给大家看)点击BI管理后会出现以下界面现在就可以通过这个页面来创建资料库了,点击“文件”来新建资料库接着会出现如下界面输入资料库名称sh111(我们是以11g数据库自带的sh用户来进行实验,请在做这之前先将oracle11g数据库中的sh用户解锁并设置密码为sh),然后选中导入元数据并输入资料库sh111.rpd的密码,可以自己设置,我设置的是12345678,设置完后按下一步(同时注意下资料库的存放位置,默认的所有资料库都是存放在该目录下),接下来会出现如下界面在连接类型处我们选择OCI10g/11g,也可以使用odbc,不过odbc使用非常麻烦,所以我选择了OCI10g/11g,接下来输入数据源名称及oracle11g数据库的sh用户名和密码。
DG-11G新特性说明
首先, 可以从活动主库构建物理备库是非常简单。
此外, 将物理备库转换为逻辑数据库也是轻而易举。
而最大的优势是, 现在, 可以高效地使用备库通过某种方式来支持业务。
Active DataGuard特性允许打开备库, 在进行查询的同时应用归档的日志。
快照备库允许在其中运行生产数据库负载, 然后闪回到起始点, 继续正常的管理器恢复进程. 这两个特性使用户能够利用备库服务器的处理功能, 极大地推动了到11g 的升级。
物理备库新特点1) 物理备库可实时查询都知道11g以前的物理备库, 可以是只读方式打开数据库, 但是这时Media Recovery(Redo Apply)过程就停止了, 如果备库处于恢复的过程那么数据库就不能打开, 11g解决了这个矛盾, 恢复的同时可以只读打开数据库, 这有点类似逻辑备库的功能。
这样可以更大发挥物理备库的作用(比如对于实时要求比较高的报表服务).2) 加快备库备份的速度在Oracle10g引入了Block Tracking技术, 来监控那些数据库是上次增量备份以来修改了的, 这样可以加快增量备份的数度, 但是这个功能只能在主库上有效, 在备库是不支持这个功能的, Oracle11g解决了这个问题, 备库的备份也支持Block Tracking, 这样用户可以在备库上面快速执行备份, 减轻主库负载。
3) 快照备库就是允许物理备库以读写模式打开, 但是同时没有破坏它作为备库的功能, 这个特性可以用来在物理备库上面执行某些测试, 等测试完成, 把数据库再置为物理备库. 当然在备库以读写方式打开的时候它只能接收主库传过来的Redo, 但是不能应用这些Redo. 实际上因为就是在备库上使用了Flashback技术来实现这个功能.4) 提高Redo Apply的性能Oracle11g可以利用并行技术来进行Redo Apply, 提高恢复的速度.逻辑备库新特点1) 支持的数据类型更多了XMLType data type(CLOB存储)2) 支持下面 O racle包和数据加密DBMS_FGA(Fine Grained Auditing)DBMS_RLS(Virtual Private Database)实际上就是支持在逻辑备库上面支持精细的审计功能和虚拟数据库功能Transparent Data Encryption(TDE)的支持备库上面支持并行DDL3) Fast-Start Failover更快速执行失败切换 , 更精细控制触发Failover的事件 , 比如可以根据某个ORA的错误号来发出切换 .4) 可动态修改的参数在运行逻辑备库环境的过程中, 需要调整该过程并修改一些参数值. 在Oracle11g中, 这些参数中的大部分可以在线更新。
ODI11g问题汇总
其它用户无法连接工作资料库,Network Adapter could not establish the connection报错信息:oracle.odi.core.config.WorkRepositoryResourceFailureException:org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: 获取连接时出现异常错误: oracle.ucp.UniversalConnectionPoolException: 无法从数据源获取连接: java.sql.SQLRecoverableException: IO 错误: The Network Adapter could not establish the connectionat oracle.odi.core.repository.Repository.getWorkRepository(Repository.java:155)at oracle.odi.core.OdiInstance.createWorkRepository(OdiInstance.java:504)at oracle.odi.core.OdiInstance.<init>(OdiInstance.java:581)at oracle.odi.core.OdiInstance.createInstance(OdiInstance.java:521)at oracle.odi.ui.docking.panes.OdiCnxFactory$1.run(OdiCnxFactory.java:209)at oracle.ide.dialogs.ProgressBar.run(ProgressBar.java:656)at ng.Thread.run(Thread.java:662)Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: 获取连接时出现异常错误: oracle.ucp.UniversalConnectionPoolException: 无法从数据源获取连接: java.sql.SQLRecoverableException: IO 错误: The Network Adapter could not establish the connectionat org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:82)at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:524)at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:588)at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:613)at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:645)at org.springframework.jdbc.object.SqlQuery.execute(SqlQuery.java:111)at org.springframework.jdbc.object.SqlQuery.execute(SqlQuery.java:121)at org.springframework.jdbc.object.SqlQuery.execute(SqlQuery.java:136)atoracle.odi.core.repository.support.RepositoryUtils$RepositoryInfoSource.loadRepositoryInfo(RepositoryUtils.java :180)at oracle.odi.core.repository.support.RepositoryUtils.loadWorkRepositoryInfo(RepositoryUtils.java:380) at oracle.odi.core.repository.Repository.getWorkRepository(Repository.java:153)at oracle.odi.core.OdiInstance.createWorkRepository(OdiInstance.java:505)... 5 moreCaused by: java.sql.SQLException: 获取连接时出现异常错误: oracle.ucp.UniversalConnectionPoolException: 无法从数据源获取连接: java.sql.SQLRecoverableException: IO 错误: The Network Adapter could not establish the connectionatoracle.odi.jdbc.datasource.LoginTimeoutDatasourceAdapter.doGetConnection(LoginTimeoutDatasourceAdapter.j ava:133)atoracle.odi.jdbc.datasource.LoginTimeoutDatasourceAdapter.getConnection(LoginTimeoutDatasourceAdapter.jav a:62)at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:113)at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79)at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:524)at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:588)at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:613)at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:645)at org.springframework.jdbc.object.SqlQuery.execute(SqlQuery.java:111)at org.springframework.jdbc.object.SqlQuery.execute(SqlQuery.java:121)at org.springframework.jdbc.object.SqlQuery.execute(SqlQuery.java:136)atoracle.odi.core.repository.support.RepositoryUtils$RepositoryInfoSource.loadRepositoryInfo(RepositoryUtils.java :180)at oracle.odi.core.repository.support.RepositoryUtils.loadWorkRepositoryInfo(RepositoryUtils.java:381) ... 7 moreCaused by: java.sql.SQLException: 获取连接时出现异常错误: oracle.ucp.UniversalConnectionPoolException: 无法从数据源获取连接: java.sql.SQLRecoverableException: IO 错误: The Network Adapter could not establish the connectionat oracle.ucp.util.UCPErrorHandler.newSQLException(UCPErrorHandler.java:488)at oracle.ucp.util.UCPErrorHandler.throwSQLException(UCPErrorHandler.java:163)at oracle.ucp.jdbc.PoolDataSourceImpl.getConnection(PoolDataSourceImpl.java:911)at oracle.ucp.jdbc.PoolDataSourceImpl.getConnection(PoolDataSourceImpl.java:857)at oracle.ucp.jdbc.PoolDataSourceImpl.getConnection(PoolDataSourceImpl.java:851)at sun.reflect.GeneratedMethodAccessor175.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at ng.reflect.Method.invoke(Method.java:597)atoracle.odi.core.datasource.support.RuntimeClassLoaderDataSourceCreator$DataSourceInvocationHandler.invoke (RuntimeClassLoaderDataSourceCreator.java:41)at $Proxy0.getConnection(Unknown Source)atoracle.odi.jdbc.datasource.LoginTimeoutDatasourceAdapter$ConnectionProcessor.run(LoginTimeoutDatasource Adapter.java:217)at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)at java.util.concurrent.FutureTask.run(FutureTask.java:138)at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)... 1 moreCaused by: oracle.ucp.UniversalConnectionPoolException: 无法从数据源获取连接:java.sql.SQLRecoverableException: IO 错误: The Network Adapter could not establish the connection at oracle.ucp.util.UCPErrorHandler.newUniversalConnectionPoolException(UCPErrorHandler.java:368)at oracle.ucp.util.UCPErrorHandler.throwUniversalConnectionPoolException(UCPErrorHandler.java:49) at oracle.ucp.util.UCPErrorHandler.throwUniversalConnectionPoolException(UCPErrorHandler.java:80) atoracle.ucp.jdbc.DriverConnectionFactoryAdapter.createConnection(DriverConnectionFactoryAdapter.java:122) atmon.UniversalConnectionPoolImpl$UniversalConnectionPoolInternal.createOnePooledConnectio nInternal(UniversalConnectionPoolImpl.java:1563)atmon.UniversalConnectionPoolImpl$UniversalConnectionPoolInternal.access$600(UniversalConne ctionPoolImpl.java:1399)atmon.UniversalConnectionPoolImpl.createOnePooledConnection(UniversalConnectionPoolImpl.ja va:477)atoracle.ucp.jdbc.oracle.OracleJDBCConnectionPool.createOnePooledConnection(OracleJDBCConnectionPool.java: 128)atmon.UniversalConnectionPoolImpl.borrowConnectionWithoutCountingRequests(UniversalConne ctionPoolImpl.java:297)atmon.UniversalConnectionPoolImpl.borrowConnection(UniversalConnectionPoolImpl.java:142) at oracle.ucp.jdbc.JDBCConnectionPool.borrowConnection(JDBCConnectionPool.java:119)at oracle.ucp.jdbc.PoolDataSourceImpl.getConnection(PoolDataSourceImpl.java:899)... 14 more解决方法:创建工作资料库时,需要指定正确的参数:红色框中,JDBC中的服务器地址要输入IP或机器名,不可用127.0.0.1,否则会造成其它用户不能登录ODI.如果已经在旧的工作资料库上创建了PROJECT等对象,可以通过SOLUTION的导入/导出将内容迁移到新的工作资料库上。
ODI如何通过logminer技术从oracle 数据库中抽取增量数据
ODI如何通过logminer技术从oracle 数据库中抽取增量数据(一)收藏最近做的几个项目,都碰到了ODI从oracle9i或者10g数据库中抽取增量数据的情况,那么ODI如何从数据库中抽取增量数据呢,ODI针对Oracle数据库的抽取,提供了3类知识模块:Oracle SimpleOracle ConsistentOracle 9i/10g/11gConsistent (LOGMINER)Simple方式一般是针对数据库中需要增量复制的表之间没有主外键约束的情况,在这种方式下,表之间的先后复制关系没有影响。
但如果表之间有主外键对照关系,采用simple方式就会出现问题,举个简单的例子,我们需要从源数据库抽取两张表订单和订单明细表的增量数据,其中订单明细表的外键要参照订单表的主键。
1. 我们将订单表中主键从11000-25000的增量数据复制到目标端。
2. 在复制的过程中,源端订单表又插入了两条新数据,主键为25001和2500 2。
3. 当进行订单明细表的增量数据复制时,与订单表中主键25001和25002对应的明细数据就会在目标端出错,因为刚才复制时,这两条数据没有复制到目标端。
Consistent方式就是专门来解决这个问题的,它在处理父表前首先锁定(注意不是锁住)主表和子表需要复制的记录,在增量数据复制时,插入主表和子表的新增量数据都会被本次抽取过程忽略,放在下次抽取时处理。
因此采用Consistent 方式进行增量数据捕获一般需要5个步骤:1. 扩展窗口(extend_window):计算主表和子表本次抽取的结果集,并赋予其一个序列号。
2. 锁定订阅者(lock subscriber):针对变化数据的某个订阅者,确定其需要抽取的序列号范围(一个系统的变化数据可能会被多个系统使用,比如主数据管理系统)。
3. 执行抽取过程,我们通过ODI中的接口程序进行实现。
4. 抽取完成后,解锁订阅者(unlock subscriber):记录下本次抽取的最后的序列号,以便于下次使用。
ODI11g的使用教程
以下是设计过程1、创建主资料库,一般1个即可。
2、创建工作资料库,可以多个,也可以仅创建1个。
3、创建数据服务器,每个instance或者应用创建一个,底下按照用户创建不同的物理架构。
4、创建逻辑架构,通常与物理架构一一对应,也可以一个逻辑架构对应多个物理架构。
5、创建项目,导入知识模块,或者自己开发知识模块。
6、创建模型,每个模型对应到逻辑架构。
7、创建接口,修改必要的知识模块和选项。
8、运行接口。
9、查看和监控运行结果,包括出错脚本和信息。
10、进一步可创建包、场景,并运行。
接口、包、场景的关系接口是ELT基本单元,包类似工作流,用于将接口串接起来,场景是对象的发布版本,可理解为预编译的。
创建ODI的资料库用户资料库分为主存储库和工作资料库,是ODI操作和运行的存储区域。
创建ODI主资料库用户。
为ODI准备一个空间来存放它的主资料库。
在Oracle数据库下创建用户,示例如下:打开cmd.exe,使用命令行:create user ODI_MASTER_REP identified by abcd temporary tablespace TEMP profile DEFAULT;grant connect to ODI_MASTER_REP;grant dba to ODI_MASTER_REP;grant resource to ODI_MASTER_REP;二、创建主资料库ODI_MASTER_REP是上一步创建的主资料库用户名创建新的ODI资料档案库登录可点击测试,验证是否能连接成功。
工作资料库用户创建以DBA身份登录Oracle数据库,使用如下命令:create user ODI_WORK_REP identified by abcde temporary tablespace TEMP profile DEFAULT;grant connect to ODI_WORK_REP;grant dba to ODI_WORK_REP;grant resource to ODI_WORK_REP;创建工作资料库需要登录主资料库,才能创建工作资料库。
g与10g数据库迁移方法
g与10g数据库迁移方法由于11g上导出导入10g数据库存在空字段没有值的情况,所以要使用e某pdp和impdp命令:1.在11g上创建目录、给予权限2.在11g上导出3.在10g上新建SIEBEL用户,确保用户下无数据,表空间为空。
4.在10g上D:\\oracle\\product\\10.2.0\\db_1\\BIN文件夹下执行导入命令导入。
参考1:一次Oracle11g数据库导入Oracle10g数据库操作笔记11g备份,导入10g的时候会抛错,直接阻止导入。
但是有时候还必须得把11g的数据库导入到10g,我今天就遇到了这种情况。
chema=ybjdirectory=DATA_PUMP_DIRdumpfile=aa.dmplogfile=aa.lo gverion=10.2.0.1.0其中,红色文字部分是根据需要改写的地方。
例如我的y密码是cuc2022,数据库id是cuc,要到出的用户名是ybj,要导入到10.2.0.1.0版本的Oracle数据库中去。
aa.dmp和aa.log将会在11g的dpdump目录中生成,例如我的11g装在了E盘下面,于是aa.dmp将会在E:\\app\\Adminitrator\\admin\\cuc\\dpdump目录下被生成。
二、在10g服务器上,使用impdp命令恢复数据准备工作:1.建库2.建表空间3.建用户并授权4.将aa.dmp拷贝到10g的dpdump目录下1-3点可以去参考博主的上一篇博客“Oracle数据库移植全步骤”,介绍的很详细,这里不再多说。
关于第4点,我的10g装在了e:\\tool 目录下,于是我将aa.dmp文件拷贝到了E:\\tool\\admin\\cucf\\dpdump目录下。
chema=ybjdirectory=DATA_PUMP_DIRdumpfile=aa.dmplogfile=aa.lo gverion=10.2.0.1.0其中红色部分是根据需要改写的地方。
ODI 11G安装
ODI 11G安装/* ----------------------------------------------------------------- Author : RUDYEmail :liu4648573@Created : 2011-08-03------------------------------------------------------------------ */安装环境:// OS : Windows 2003 SP2 R2// RDBMS : Oracle 10.2.0.4// RAM : 2G// CPU : Inter I7 2630QM// ODI 11G一、安装Oracle 10.2.0.4安装Oracle 10.2.0.1 ,选择【高级安装】一路Next,注意:数据库字符集选择【AL32UTF8】;安装完Oracle 10.2.0.1后,停掉Oracle启动的服务,安装Oracle 10.2.0.4补丁;安装完Oracle 10.2.0.4 Patch后,运行以下命令:Cmd下运行:sqlplus / as sysdbaSQL>startup upgradeSQL>@C:\oracle\product\10.2.0\db_1\rdbms\admin\catupgrd.sqlSQL>@C:\oracle\product\10.2.0\db_1\rdbms\admin\catalog.sqlSQL>shutdown immediateSQL>startupOracle 10.2.0.4到此安装完毕,重启OS。
二、安装RCU:到RCU目录下运行rcuHome\BIN\rcu.bat这里如果【定制变量】有默认值可以不用输入;三、安装Weblogic Server略四、安装ODI如果只是学习,可以只安装【Developer安装】项目;设置独立代理的名称和端口;五、配置ODI Weblogic Domain注意:weblogic密码必须为数字和字母相结合;五、开启Weblogic ServerDOMAIN_NAME\bin\startWebLogic.cmdwhere DOMAIN_NAME is the name of the directory in which you located the domain, typically MW_HOME\user_projects\domains\DOMAIN_NAME.On Windows operating systems, the Configuration Wizard creates a shortcut on the Start menu to start the Administration Server that you created (User Projects>DOMAIN_NAME>Start Admin Server for WebLogic Domain).七、【可选】开启独立代理C:\oracle\Middleware\LIU_ODI\oracledi\agent\bin\Agent_name.bat八、添加安全性C:\oracle\Middleware\Oracle_ODI1\common\bin\wlst.cmdconnect()createCred(map="oracle.odi.credmap",key="SUPERVISOR",user="SUPERVISOR", password="*******", desc="Key for Supervisor")createCred(map="oracle.odi.credmap", key="LIU_ODI_DOMAIN", user="weblogic", password="*******", desc="Username and password for base_domain")disconnect()到此,ODI已经安装完毕,可以使用。
odi的用法
ODI(Oracle Data Integrator)是Oracle公司推出的一款ETL(Extract-Transform-Load)工具,它支持多种数据源,包括Oracle、MySQL、DB2、Informix等,同时也支持多种数据接口,如JDBC、Oracle SQL*Net、Sybase Open Client等。
ODI的主要用法包括以下步骤:1.安装ODI:首先,您需要在您的计算机上安装ODI。
您可以从Oracle的官方网站下载最新版本的ODI安装程序,并按照安装指南进行安装。
2.创建新ODI应用程序:在ODI中,您可以创建一个新的应用程序来引入ODI平台,或者从旧的ODI中提取并在新应用中进行使用。
3.连接源和目标实体:使用ODI的源系统管理功能连接源实体,并使用接受系统管理功能连接目标实体。
4.创建数据模型:在ODI中,数据模型是一个核心的概念,它描述了数据的结构、属性和关系。
您可以使用ODI的数据建模工具创建一个新的数据模型,或者从现有的数据源中提取数据模型。
5.编写业务逻辑:在ODI中,业务逻辑是一组规则和条件,用于定义数据的转换和映射规则。
您可以使用ODI的图形化界面编写业务逻辑,或者使用ODI提供的脚本语言(如JavaScript、PL/SQL等)编写业务逻辑。
6.运行和监控任务:在ODI中,任务是一个可重复执行的流程,用于实现特定的数据处理任务。
您可以使用ODI的图形化界面运行和监控任务,或者使用ODI提供的命令行工具运行和监控任务。
7.输出结果:在ODI中,输出结果是一个重要的环节,用于展示数据处理的结果。
您可以使用ODI提供的图形化界面查看输出结果,或者使用ODI提供的命令行工具导出输出结果。
以上是ODI的主要用法,希望能对您有所帮助。
odi使用用途-概述说明以及解释
odi使用用途-概述说明以及解释1.引言1.1 概述概述部分内容:数据库集成器(Oracle Data Integrator,简称ODI)是一种强大的数据管理工具,它在数据集成、数据迁移以及数据转换方面都有着广泛的应用。
ODI的设计初衷是为了满足不同规模和复杂度的数据管理需求,提供一个灵活且易于使用的解决方案。
ODI的主要功能是将来自不同数据源的数据集成到目标系统中。
通过ODI,用户可以轻松地连接和提取来自各种数据库、文件、Web服务以及其他数据源的数据,并将这些数据转换成符合目标系统要求的格式。
这为企业内部和外部数据的集成提供了便利。
此外,ODI还具有优秀的数据迁移能力。
无论是在数据库升级、平台迁移还是系统重构时,ODI都可以帮助用户将数据从一个系统迁移到另一个系统。
它支持数据的映射、转换、清洗等操作,确保数据无误地迁移过程中。
除了数据集成和数据迁移,ODI还提供了丰富的数据转换功能。
用户可以使用ODI的可视化界面,定义和执行数据的转换规则,实现数据的清洗、整合、计算等操作。
这大大简化了数据转换的复杂性,并提高了工作效率。
综上所述,ODI在数据集成、数据迁移以及数据转换方面都有着广泛的应用。
它为企业提供了一个强大的数据管理工具,使得数据的集成、迁移和转换变得更加高效和可靠。
接下来的章节中,我们将详细介绍ODI 在不同领域中的具体应用,并对其优势以及局限性进行分析。
1.2文章结构1.2 文章结构本文将按照以下结构来展开讨论ODI的使用用途:1.2.1 概述在本部分,将介绍ODI(Oracle Data Integrator)是什么以及其在数据管理和集成方面的重要性。
我们将讨论ODI的基本原理和工作流程,以便读者对后续章节中的具体用途有一个清晰的了解。
1.2.2 odi在数据集成中的用途这一部分将探讨ODI在数据集成领域的应用。
数据集成涉及将来自不同源头的数据整合到一个中央库中的过程。
我们将讨论ODI如何帮助企业实现跨不同数据库和应用系统的数据集成,并介绍ODI在数据提取、转换和加载(ETL)等方面的功能和优势。
odi11g truncate delete all
odi11g truncate delete all如何在Oracle数据库中使用ODI11g来删除或截断所有数据。
一、简介在Oracle数据库中,ODI11g(Oracle Data Integrator 11g)是一种强大的数据集成工具,它可以帮助用户在不同的数据源之间进行数据转移和转换。
本文将教您如何使用ODI11g来删除或截断数据库中的所有数据。
二、备份数据在进行任何数据删除操作之前,强烈建议您先备份数据。
这是防止意外数据丢失的一种非常重要的措施。
三、连接到ODI Studio首先,您需要连接到ODI Studio,这是ODI11g的集成开发环境。
在登录到ODI Studio后,您可以开始执行下面的操作。
四、创建一个数据服务器在ODI Studio的“拓扑”窗口中,找到“物理”选项卡。
右键单击并选择“新建数据服务器”。
在弹出的对话框中,输入服务器名称和其它相关信息,然后单击“确定”。
五、创建一个模型在ODI Studio的“拓扑”窗口中,找到“模型”选项卡。
右键单击并选择“新建模型”。
在弹出的对话框中,输入模型名称和其它相关信息,然后单击“确定”。
六、创建一个模式在创建模型的过程中,您需要创建一个模式。
在模型对话框中,单击“新建”按钮。
在弹出的对话框中,输入模式名称和其它相关信息,然后单击“确定”。
七、创建一个数据存储在模式对话框中,选择“数据存储”选项卡。
右键单击并选择“新建数据存储”。
在弹出的对话框中,输入数据存储名称和其它相关信息,然后单击“确定”。
八、创建一个表在数据存储对话框中,选择“表”选项卡。
右键单击并选择“新建表”。
在弹出的对话框中,输入表名称和其它相关信息,然后单击“确定”。
九、创建一个接口在ODI Studio的“设计”窗口中,找到“接口”选项卡。
右键单击并选择“新建接口”。
在弹出的对话框中,输入接口名称和其它相关信息,然后单击“确定”。
十、创建一个指令任务在接口对话框中,选择“任务”选项卡。
ODI11G安装配置手册_win解析
数据集成平台部署手册(ODI 11g)目录1前言 (1)1.1编写目的 (1)1.2服务对象 (1)1.3版本要求 (1)2部署准备 (2)3安装ODI客户端图形化软件........................................................................... 错误!未定义书签。
3.1安装ODI中间件W EBLOGIC.................................................................... 错误!未定义书签。
3.2配置ODI主资料库和工作资料库 (6)3.3安装ODI客户端图形化软件 (11)4配置客户端登陆信息 (18)配置ODI客户端登陆 (18)5使用YAJSW将AGENT发布为WINDOWS系统服务 (20)5.1前言 (20)5.2工具介绍 (20)5.3前提配置 (21)5.4操作步骤 (22)5.5发布多个代理方法 (28)1前言1.1编写目的本文档的编写主要介绍ODI 11G以及组件在Windows下的安装和配置过程。
1.2服务对象1.3版本要求2部署准备●内存:至少2 GB,以运行Oracle数据库和ODI客户端图形化软件●硬盘:至少2 GB●CPU:P4 2.4GHZ及以上●安装好JDK1.6 ,并且配置好相应的环境变量(注:安装路径不要在C:\ProgramFiles下即可,可以直接在C:\Java下或者E:\Java下)环境变量需要配置以下三个变量,如果变量没有需要添加.注意,下面只是参考,因根据具体JDK环境调整,其中JA V A_HOME只能有一个,Classpath和Path中如果有数据了,则添加在前面,中间用“;”分开。
Classpath:D:\Java\ jdk1.6.0_29\libJA V A_HOME:D:\Java\ jdk1.6.0_29Path:D:\Java\ jdk1.6.0_29\bin●准备好ODI相关文件:wls1035_oepe111172_win32.exeofm_odi_win_11.1.1.5.0_32_disk1_1of1.zip(有rcuHome文件夹)ofm_rcu_win_11.1.1.5.0_disk1_1of1.zip(包含Disk1和Disk2文件夹) jdk-6u29-windows-i586.exeyajsw-stable-11.06.zip●Oracle 10g客户端(若oci方式连接数据库需要安装) oracle数据库版本必须高于10G的10.2.0.4或11G的3安装ODI客户端图形化软件3.1安装ODI中间件Weblogic打开wls1035_oepe111172_win32.exe,选择ORACLE_HOME目录<注>:weblogic,infrastructure和ODI软件都必须安装在同一ORA CLE_HOME目录下注册更新,这里不更新,把勾去掉,下一步下一步,选择安装类型,这里就选择默认安装,典型的能用下一步,选择产品安装目录下一步,安装概要下一步,安装完成3.2配置ODI主资料库和工作资料库这里安装的版本是11.1.1.5.0版本,使用ofm_odi_win_11.1.1.5.0_32_disk1_1of1.zip。
odi流程
odi流程ODI(Operational Data Integration,操作数据集成)是一种用于数据仓库和数据集成的ETL(Extract-Transform-Load,抽取-转换-加载)工具。
ODI提供了一个可视化的开发环境,使得用户能够方便地操作数据集成过程。
ODI的流程主要包括以下几个步骤:1. 数据抽取(Extract):首先,ODI从源系统中抽取数据。
源系统可以是关系型数据库、文件、Web服务等。
ODI提供了多种方式来抽取数据,例如使用SQL查询、使用文件操作等。
用户可以根据自己的需求选择合适的方式。
2. 数据转换(Transform):在数据抽取完成后,ODI会对抽取的数据进行转换。
数据转换包括数据清洗、数据加工、数据合并等。
ODI提供了丰富的数据转换功能,例如字符串操作、日期操作、转换函数等。
用户可以通过可视化的界面来配置数据转换的规则。
3. 数据加载(Load):经过数据转换后,ODI将转换后的数据加载到目标系统中。
目标系统可以是数据仓库、数据集市、报表系统等。
ODI提供了多种方式来加载数据,例如数据库复制、文件写入等。
用户可以根据自己的需求选择合适的方式。
4. 数据校验(Validate):在数据加载完成后,ODI会对加载后的数据进行校验。
数据校验包括数据一致性校验、数据完整性校验等。
ODI提供了多种校验方式,例如数据比较、数据合并等。
用户可以根据自己的需求选择合适的校验方式。
5. 错误处理(Error Handling):在整个流程中,可能会出现一些错误。
ODI提供了丰富的错误处理功能,例如错误捕获、错误处理、错误重试等。
用户可以通过可视化的界面来配置错误处理规则。
6. 任务调度(Schedule):最后,ODI将整个流程进行调度。
ODI提供了灵活的调度功能,例如定时任务、循环任务等。
用户可以根据自己的需求来配置任务的调度方式。
整个ODI流程的设计和配置都是通过可视化的界面完成的。
odi业务流程
odi业务流程ODI业务流程是指Oracle Data Integrator的业务流程。
Oracle Data Integrator是一种数据集成工具,它可以帮助企业实现数据的提取、转换和加载(ETL)过程。
本文将详细介绍ODI业务流程的各个环节和步骤,以及其在企业数据管理中的重要性和应用。
ODI的业务流程可以分为以下几个主要步骤:数据抽取、数据转换和数据加载。
在数据抽取阶段,ODI将从不同的数据源中提取数据,这些数据源可以是关系型数据库、文件、Web服务等。
ODI提供了丰富的连接器和适配器,可以方便地连接到各种数据源,并提供高效的数据抽取功能。
在数据转换阶段,ODI提供了强大的数据转换和处理功能。
用户可以使用ODI的图形化界面来设计和定义数据转换规则,包括数据清洗、数据合并、数据计算等。
ODI支持多种转换操作,如过滤、排序、聚合、联接等,可以满足不同的数据处理需求。
在数据加载阶段,ODI将转换后的数据加载到目标系统中。
目标系统可以是关系型数据库、数据仓库、数据湖等。
ODI提供了高效的数据加载功能,可以通过批量加载、增量加载等方式将数据加载到目标系统中。
此外,ODI还支持数据质量控制和错误处理,确保数据加载的准确性和完整性。
除了上述基本的业务流程,ODI还提供了其他一些重要功能和特性。
例如,ODI支持任务调度和监控,可以自动执行数据集成任务,并实时监控任务的执行状态和结果。
ODI还提供了数据变更捕获和数据同步功能,可以实现不同系统之间的数据同步和数据一致性。
在企业数据管理中,ODI的业务流程起到了至关重要的作用。
它可以帮助企业实现数据的集成和共享,提高数据的一致性和准确性。
通过ODI,企业可以更好地管理和利用数据资源,提高决策的准确性和效率。
此外,ODI还可以提高数据处理的效率和速度,减少数据集成的时间和成本。
ODI业务流程是企业数据管理中不可或缺的一部分。
它通过提供高效的数据集成和处理功能,帮助企业实现数据的提取、转换和加载。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ODI 11G初探—数据传输
Start:2011.01.21
Updated:2011.01.24
王凡
wangfan
wf141732@
woshiwangfan@
1.简介
ODI是oracle的数据抽取工具,11G融合了wls和jdev,与10G相比出现了教大幅度的
变化。
1.1.环境信息
OS:WINDOWSXP -32bit
ORACLE-DB:XE10G
WLS:10.3.3
ODI:11.1.1.3
RCU:11.1.1.3
PostgreSQL:9.0.2
1.2.相关文档
2.软件准备
2.1.软件下载
Oracle相关页面下载
Postgresql-jdbc:/download/postgresql-9.0-
801.jdbc4.jar
3.安装
很郁闷开始等了很久才出现安装对话框,windows安装直接下一步!
3.1.安装RCU
解压完成后需要rcuHome\BIN目录下面打开rcu.bat文件,选择创建
填写数据库连接信息
作校验
选择需要安装的数据库对象
填写ODI数据库用户口令
填写ODI相关对象信息,主资料库ID,口令,可以填写默认
创建表空间
开始创建
表空间创建完毕后作创建对象前确实
开始创建主资料库和工作资料库
3.2.安装wls
直接下一步,步骤略!
3.3.安装odi
解压后到disk1中点击setup,选择需要按照的ODI对象,本机上安装服务器和编辑器!
作检查
选择安装目录
数据库连接信息
ODI应用超级用户口令
选择创建的工作资料库
代理名称和代理端口
操作系统会确认使用端口,可以关闭防火墙!
确认安装信息
开始安装
开始配置!
安装完毕!
3.4.创建DOMAIN
进入$ODI_HOME$\common\bin\运行config.cmd来创建domain
填写domain的名称
Weblogic域管理员口令
选择java sdk
填写数据库连接信息
作数据库连接信息验证
选择domain功能配置
管理服务器信息配置
受管理server
计算机配置
下一步到集群,由于不作集群,直接到下一步分配server
服务安装
配置概要
开始创建域
创建完毕
3.5.启动服务器
首先启动Adminerver
然后到C:\Oracle\Middleware\wlserver_10.3\server\bin目录下面启动startNodeManager.cmd
到C:\Oracle\Middleware\wlserver_10.3\common\nodemanager目录下面修改nodemanager.properties文件中StartScriptEnabled=true将false改为true,重启nodemanager
进入weblogic console页面服务器->控制->启动odiServer
3.6.创建工作资料库
如果需要另外的工作资料库可以重新新建工作资料库在拓扑->选择资料档案库->右键工作资料档案库
新建工作资料档案库
在创建工作资料档案库中填写数据库连接信息
绑定工作资料库属性,由于在安装的时候已经创建了WORKREP,现在创建的命名为
WORKREP1
4.服务器配置
4.1.添加安全性
在目录C:\Oracle\Middleware\Oracle_ODI1\common\bin打开wlst.cmd
输入命令connect('weblogic', 'weblogic1','t3://localhost:7001')
连接上AdminServer后添加安全信息createCred(map="oracle.odi.credmap",
key="SUPERVISOR", user="SUPERVISOR", password="wangfan", desc="Key for Supervisor")
添加成功后断开连接disconnect()
4.2.配置Agent
在拓扑->物理体系架构->右键->新建代理
输入代理需要的名称,发布的主机,端口
在拓扑->逻辑体系架构->代理->新建逻辑代理
输入逻辑代理的名称,选择对应的物理代理
在新建的物理代理上右键->生成wls模板
在wls模板生成向导,在代理信息选择默认,选择下一步
选择需要一起部署的外部驱动和外部库文件
选择主数据源
选择输出路径
点击完成
在wls console页面中选择部署->安装
选择刚刚生成的jar文件
选择部署的server端
选择默认的安全性
选择完成
测试agent是否成功
运行成功
5.简单数据传输
做一个从PostgreSQL数据库到ORACLE数据库的数据传输
5.1.建立PostgreSQL数据源
将下载的驱动拷贝到win7:C:\Users\王凡\AppData\Roaming\odi\oracledi\userlib
WinXP在目录C:\Documents and Settings\wangfan\Application
Data\odi\oracledi\userlib
然后启动ide,到拓扑结构->物理体系结构->PostgreSQL->右键->新建数据服务器
定义连接的信息
Jdbc连接属性
测试连接
连接成功
在数据源上右键->新建物理方案
在物理方案中选择数据库,方案
5.2.建立ORACLE数据源
建立oracle的数据源
创建物理方案
5.3.建立逻辑架构
在拓扑->逻辑架构->右键->新建逻辑架构
输入名字选择物理架构
建立oracle的逻辑架构
5.4.模型的建立
在设计器->模型->新建模型
在模型定义填写好名称->选择逻辑方案
5.5.项目的建立
在设计器->项目->新建项目
在新建的项目填写项目名称
在新建的项目下面->知识模块->右键->导入知识模块
找到oracledi目录下面的xml-reference目录
选择必要的模块
导入完成后可以看到导入报告
5.6.表反向
打开刚刚建立的PostgreSQLModel的模型,选择逆向工程->定制。
掩码输入需要反向的jobs_%,知识模块选择RKM SQL(Jthon),如果不存在则在前面选择知识模块
选择后保存,在设计器->模型->PostgreSQLModel->右键->逆向工程
选择执行的条件,由于在服务器上的Agent还没有安装驱动,所以在本地运行
运行完后在->操作->会话列表->会话可以查看到已经运行成功的会话
在设计器可以看到反向成功的表
5.7.建立数据存储
在设计器->模型->OracleModel->右键->新建数据存储
填写名称、别名、资源名称
在列标签建立如下的列
5.8.建立接口
在设计器->wangfanPro->第一个文件夹->接口->右键->新建接口
定义接口名称
在模型中从OracleModel中拖动JOBS_JOB到目标数据存储,从PostgreSQL中拖动jobs_job到源区域
选择下面的下标签页中的流->选择目标->选择IMK->CREATE_TARG_TABLE
在工具栏点击运行
启动会话
到操作里面查看已经成功的会话可以看到插入两条数据
6.数据增量
6.1.添加订阅
在设计器->模型->PostgreSQLModel->右键->已更改数据捕获->订户->订阅
添加PSQL到oracle的订阅名称
晕死,没有JKM可用,不支持PostgreSQL!
没办法,自己动手来一个!提供给大家KM_JKM_PostgreSQL_wangfan.xml 在项目->知识模块->JKM->右键导入知识模块,将此模块导入
在设计器->模型->打开PostgreSQLModel->日记记录->选择导入的知识模块
再次添加订阅
6.2.启动日志
先添加CDC
再启动日记
选择启动已经添加的订阅。