Informatica学习笔记十九点Word下载.docx
- 文档编号:3477401
- 上传时间:2023-05-01
- 格式:DOCX
- 页数:17
- 大小:29.12KB
Informatica学习笔记十九点Word下载.docx
《Informatica学习笔记十九点Word下载.docx》由会员分享,可在线阅读,更多相关《Informatica学习笔记十九点Word下载.docx(17页珍藏版)》请在冰点文库上搜索。
答:
就是
语句一:
update
tab_name
set
c1=
value1
c2
=
value2
where
c_prikey
value_pri
语句二:
insert
into
values(******)
当在
tab_name的c_prikey找到有等于value_pri的,就执行语句一把所有对应的记录update。
当没有匹配的,就执行语句二。
你可以powercenter的
source
defination中的自己定义主键,也可以直接
override
sql,
可以不用理会真实表结构中是否有主键
客户端连接服务器
我通过客户端连接到服务器,做了一个workflow,运行的时候出现错误,说是服务器连接不上
repository
server和infomatic
server他俩的port是不是要一样还是不需要?
看看server
的配置..我想可能是没有配置好.
Repository
server服务起来了,就是informatica
server起不来了,在配置的时候,是informatica
server的ip解析不出来,怎么才能把那个地址和主机对应起来
1.直接写IP
2.编辑客户端的%WINDOWS%/SYSTEM32/DRIVERS/ETC/HOSTS文件,把ip与名字的对应关系加进去,客户端这台机器就可以自己解析了
3.找DNS或者什么解析服务器搞定。
server装在unix操作系统下,能不能找到配置informatica
server的配置文件对应的是那一个文件.
unix下缺省是pmserver.cfg,可以用pmconfig这个命令行工具修改配置文件,也可以直接打开编辑。
如果不是缺省的配置文件名可以通过,
ps
-efl|grep
pmserver看看是哪个文件名。
谢谢,pmserver.cfg这个文件中的配置信息我看过了,里面设置的都是repository
server
ip:
192.168.0.1和port:
6001,怎么找不到配置的informatica
server的ip:
4001我是想知道这个信息在配置文件中能找到吗?
这个是在workflow
manager里面注册的。
双击server名字就看得到了。
是的,我在workflow
manager里看到过,只要在那里注册好了就行了吗,我想它应该存放在什么位置
所以想搞清楚,还是谢谢你.
他存放在策略库的opb_server_info表里面,呵呵。
你也可以试试看直接改数据库。
不过直接改数据库这种事情要悄悄的干,被david知道了要打pp的。
workflow问题
创建一个工作流从一个txt文件到目标表,是不是要定义.par参数文件 有没有谁有这方面的资料教程,给我发一份,非常感谢!
~我创建了一个,运行的时候出错了:
(Server10)
Start
workflow:
Request
acknowledged
ERROR:
Error
in
starting
execution
of
workflow
[id
8]
[wf_s_m_test].
Please
check
the
log
for
more
information.
没必要非得定义参数文件,直接在session
中,指定路径和文件名就行..如果是同结构批量的文件,可以用file
list
功能..
参数文件也能作,相对来说是在外部控制路径和文件名,比较动态了.
那个错,不是让你去看
吗..
去看看了.
window
平台,default
去看事件管理器
Informatica用不同的用户创建的不同的folder,互相看不见是什么原因那?
保护机制的作用,建folder的时候,在安全选项里可以设置!
~
把read权限赋给
user就可以了
也有可能是启用了
version
control
的原因
Informatica学习笔记5:
建立Repositories的时候出错
我的Infromatica是安装在英文版的Windows环境下的,Matadata要放在Oracle9i中,可是当我在建立Repository的时候怎么也连接不上我的Oracle9i数据库,而我用其他方式连接数据库是畅通的,在Windows的事件查看中看到如下信息:
(368|752)
Failure
running
command-line
request
type[100401]
[pmrepagent
create
-r
"
TCS"
-t
Oracle"
-u
-c
Oradb
-d
MS1252"
-h
tcs-china.db
-o
9999
-H
tcs-china.db"
-O
5001
-K
2082340862].
is
[An
error
occurred
while
creating
repository.].
建repository在"
Server
Administration
Console"
里面可以找到Active
Log的,可以看看出错信息,出错多的好像都是插入一个LONG的值,通常建策略库出问题都是字符集捣的鬼,几个地方要注意数据库的字符集,系统NLS_LANG环境变量,操作系统的缺省字符集(windows在地区设置里面看,还有缺省输入法也可能影响),理论上不同的字符集只要是可转换的,都是可以的,不过弄成一样的比较简单了。
谢谢guruhao的提示和帮助,我决定将Oracle和Informatica重新安装一下再来测试一次,
我的操作系统的缺省字符集(windows在地区设置里面)是china
系统NLS_LANG环境变量是N/A
这一段都是正常的,drop
table不成功,属于建库之前清理表的动作,
还要往后,大约在中间的位置。
有个真正的插入数据的错,
你最好设置一下NLS_LANG使之与oracle
server的字符集相匹配。
it
should
be
Oracle
characterset
not
same
and
client.
我用powercenter8建立一个mapping后,在workflow
manager中建立了workflow,但是运行这个workflow时却提示以下错误信息:
Could
start
this
because
current
run
on
Integration
Service
has
completed
yet
我检查了一下:
server中的各服务已经正常启动了,但是就是运行时出现这种情况,请问是什么原因导致的?
以及怎样解决呢?
各位知道的就请说一下吧。
该错误应该是说你建的这个workflow正在运行,且还没有结束,因而你不可以再次启动该工作流。
你可以通过Monitor观察一下。
但是我在monitor中又看不到任何的session在运行啊~
将你的informatica
server在service里重新启动后再运行看看
(问:
过一阵子之后再运行就正常了。
不知道为什么?
怪怪的~~~)
我在执行某个workflow
的时候报了如下错误:
FATAL
ERROR
:
Unexpected
Condition
file
[/u05/bld65_64/pm713n/server/dmapper/widget/wjoiner.cpp]
line
[3176].
Contact
Informatica
Technical
Support
assistance.
Aborting
DTM
process
due
to
an
unexpected
condition.
请问各位这是什么原因?
我看了一下日志文件,好像是初始化的过程都还没有结束就报错了。
This
occurs
when
Joiner
transformation
mapping
become
corrupted.
To
resolve
do
one
following:
1.
Delete
re-create
transformation.
2.
Export
import
replacing
importing
it.
谢谢!
!
找到原因了,原来是某一个字段的连接线没有连上导致的错误。
可是我有个疑问,为什么有的控件出现这种情况的时候就没有问题呢?
我们这里是异地开发,从北京拿过来的mapping,在那里都可以跑通,而且没有任何问题,但是怎么拿到我这里就提示joiner输入字段没有排序呢?
问题可能发生在什么地方呢?
你的join
控件应该是来自同一个数据源的,你在join
控件前增加一个Sorter
控件,将join
的输入数据源排序。
求教,要import一系列mapping,但是codepage不一致,应该怎么调整?
codepage
不一致,一定得改..反正一个XML,只需要改两个地方..如果XML很多,写一个小程序,会方便点..如果少,手工改一下就好了.
一系列的xml?
?
是指很多,是吗?
1.建议你在导出时,用rep
manager,
将很多对象打一个包导出.
2.pmrep
命令行,有个object
功能,写一个批量的
.bat
导了
请教各位大侠:
我要用PowerCenter复制一个数据库,源库是一个SQL
Server的数据库,目标库是DB2数据库,请问怎么做?
一个表一个表的做。
如果想一次复制所有表,干脆用SQL
server的DTS好了。
如果是整个库的话,不如用DB
import/export了..
ETL强调的是T..
环境:
在一台机器上安装了informatica
services+client+oracle
10g(作为repository)。
informatica的版本是8.1.1,启动informatica
services时没有错误,但是过几分钟就停了。
日志信息catalina.out如下:
2006-11-28
16:
12:
46
org.apache.coyote.http11.Http11Protocol
init
信息:
Initializing
Coyote
HTTP/1.1
http-6001
org.apache.catalina.startup.Catalina
load
Initialization
processed
1234
ms
org.apache.catalina.core.StandardService
start
Starting
service
Catalina
org.apache.catalina.core.StandardEngine
Servlet
Engine:
Apache
Tomcat/5.0
org.apache.catalina.core.StandardHost
XML
validation
disabled
47
getDeployer
Create
Host
deployer
direct
deployment
(
non-jmx
)
org.apache.catalina.core.StandardHostDeployer
install
Processing
Context
configuration
URL
file:
c:
\Informatica\PowerCenter8.1.1\server\tomcat\conf\Catalina\localhost\adminconsole.xml
java.lang.UnsatisfiedLinkError:
D:
\Informatica\PowerCenter8.1.1\server\bin\pmjrepn.dll:
¨
ò
前几天一直运行正常,请问各位高手,该问题如何解决,谢谢!
will
occur
there
incompatible
xerces-c_2_4_0.dll
Windows
machine.
Stop
Services
service.
Go
C:
\WINNT\system32
directory.
Rename
xerces-c_2_4_0.old.dll.
Copy
the<
INFA_HOME>
\server\bin
directory
directory.
<
installation
Re-start
service.
Try
again,
please
let
me
know
result.
我们的source数据库是mysql,字符集是utf8.
现在要用informatica从中抽取数据并生成文本,用于下一步的ETL处理。
server的code
page是ISO
8859-1.
结果中文字符总是抽取不成功。
请问如何处理才能正确抽取中文字符?
8859-1
你得改成UNICODE的模式,才可以比较适合作转换..你在workflow
manager中的那个ODBC的连接,应该也有codepage的设置吧..改改试试..
谢谢斑竹。
问题是我没办法去改informatica
server的配置。
如果就用当前配置,有可能做到正确抽取中文么?
能够做一些编码的转换来实现么?
乱码,就找几个点的码制设定了..
源就那样了,
ETL服务器上配的ODBC,可能会有codepage
相关;
再就是ETL
服务器,
你已设为ISO
8859-1,如果不对中文数据作转换,应该不会乱;
manager中,配置ODBC我忘了是不是也有code
page
设定了..就这么几块..你分开检查一下了.
你用个什么工具,通过系统ODBC去访问一下,如果看到的不是乱码,再从后面几点排这个错了..
(修改了连接mysql的odbc,加上
stmt=SET
NAMES
'
utf8'
就好了,谢谢斑竹!
)
各位兄弟们帮忙看一下,informatica的问题,我使用的是6版本,目标数据库是oracle
10g,在安装好,配置好的时候,执行workflow的时候报这样的错误
CMN_1022
Database
driver
error...
[
[Microsoft][ODBC
Driver
Manager]
Data
name
found
no
default
specified
Function
Name
Connect
Error:
Failed
connect
database
using
user
[test_loc]
connection
string
[192.168.1.42].]
你用的是ODBC..是UNIX下,还是window?
为什么不用Oracle
native
driver?
这个看起来,像是你在系统建的ODBC,没有找到..
你在系统的ODBC,建立一个连接,例如:
odbc_ora_hr
测试一下,看是不是能连接到远程的oracle
server.
你在workflow
manager中,建立ODBC时,那个connectstring
写上这个名字.odbc_ora_hr
如果在系统的ODBC是通的,应该就可以了吧.
ODBC用的是informatica自带的odbc安装的,用的是window的,我也想用oracle
的驱动,但是我没有oracle
的Lincense
key,我只有odbc的所以只能用odbc的了,系统odbc配置的图和workflow
manager中配置odbc的图和你说的一样,配置好后,报的错误还是一样的,急死了
问题解决了,是key有问题!
艾!
没有informatica的Lincense
powercenter
7.1
windows平台
table
w_test_fs
target
w_test_f
源表和目标表中都有字段col1和col2,这两个字段可以看作是联合主键吧
建了个unique
index
mapping流程大概说一下
1.从源表取数据
select
fs.col1,fs.col2,fs.xxx,...
from
w_test_fs
fs
2.建lookup(从w_test_f),in的字段就是上面select出来的col1和col2,比较字段是w_test_f中的col1和col2,取出w_test_f中的主键
f.row_id,f.col1,f.col2
w_test_f
f,
fs
f.col1=fs.col1
f.col2=fs.col2
3.建filter,
把lookup找出的lookup_row_id和步骤1选出的字段传给此filter
filter条件是isnull(lookup_row_id)
4.进入目标表
现在的问题是:
源表和目标表数据条数是一样多了(之前跑过,那时目标表是空的)
就是说对于col1和col2来说,两个表是一样的
用sql可以验证
fs.*
(select
f.row_id
f
f.col2
fs.col2)
null;
执行这条sql查出0条记录
但我运行上面的mapping
还是有数据流过filter
遇到过有部分数据流过(filter起了部分作用)、也遇到过数据全部流过(filter没起作用)
当然对应的mapping是不一样的
我上面的mapp
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Informatica 学习 笔记 十九