kettle 数据迁移从oracle向mysql迁移大数据量时报错,求教

kettle 使用中的一些常见问题_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
kettle 使用中的一些常见问题
上传于||文档简介
&&k​e​t​t​l​e​学​习​总​结​汇​总
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
下载文档到电脑,查找使用更方便
还剩4页未读,继续阅读
你可能喜欢kettle 数据库连接中断重置
项目适用kettle作为etl工具,源数据库为mysql库,目标库为oracle。在持续的循环调度中,经常发现oracle的数据库连接中断,需要重置。
具体报错信息如下:
INFO&&26-12 23:40:13,220 - Kitchen - Logging is at level : Basic loggingINFO&&26-12 23:40:13,221 - Kitchen - Start of run.INFO&&26-12 23:40:13,374 - WAN_PT_OLD_SJ_DAY_ADD - Start of job executionERROR 26-12 23:42:50,832 - WAN_PT_OLD_SJ_DAY_ADD - A serious error occurred during job execution: org..di.core.exception.KettleDatabaseException:&Error occured while trying to connect to the databaseInvalid JNDI connection ETL : IO Error: Connection resetINFO&&26-12 23:42:50,837 - Kitchen - Finished!ERROR 26-12 23:42:50,837 - Kitchen - Finished with errorsINFO&&26-12 23:42:50,838 - Kitchen - Start= 23:40:13.221, Stop= 23:42:50.837INFO&&26-12 23:42:50,838 - Kitchen - Processing ended after 2 minutes and 37 seconds (157 seconds total).
将oracle会话超时不设限,并且将机器的防火墙关闭后,问题仍然存在。
网上查阅资料后发现主要问题是oracle 11g 和centos&64的不兼容bug造成的。
可能原因是1:jvm试图展示/tmp文件夹下的内容,但是/tmp文件内内容过多超时;&&&&&&&&&&&&&&&&2:函数nextBytes(byte[]) 在linux上使用/dev/random计数时,导致登录中断从而超时解决方法,在sh文件中的java 命令行中增加参数:-Djava.security.egd=file:/dev/../dev/urandom&
如在kitchen.sh/pan.sh文件的如下修改后问题即可解决:
1.如果显示内存溢出,即可如上图在javamaxmem处增加内存即可,本机设置为10g,一般不超过内存一半即可。
2.如果连接mysql显示时间超时,将mysql数据库的timeout参数调大即可,自己设置如下:
> 本站内容系网友提交或本网编辑转载,其目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时与本网联系,我们将在第一时间删除内容!
项目中如果使用了连接池,项目启动访问的的时候经常出现,数据库连接中断/通信中断的错误,此时要去细看连接池的配置 举例 dbcp &bean id=&dataSource& class=&mons.dbcp.BasicDataSource&
destroy-method= ...
最近碰到一个问题,应用程序每天的第一次进行系统访问时,会报一个奇怪的错误,最后经过仔细的跟踪,错误信息找到了,如下所示: 1 The last packet successfully received from the server was 60,428,178 milliseconds ago.
The last packet sent successf ...
DBCP 对属性 validationQuery 设置一个简单的SQL语句就行了,例如:select 1 (mysql 和 sql server 适用). WebLogic -----转载自/weblogic 进入某个连接池配置页,进入&连接&页,点击高级选项的&show&quot ...
打开kettle的资源库配置文件respositories.xml,可以看到数据库的连接密码是加密的. 例如 &username/& &password&Encrypted sasdfere13rrrf&/password&
加解密由org.pentaho.di.core.encryption.Encr负责,算法非常简 ...
HiKariCP是数据库连接池的一个后起之秀,号称性能最好,可以完美地PK掉其他连接池. 原文地址:http://blog.csdn.net/clementad/article/details/ 官网:/brettwooldridge/HikariCP 为何要使用HiKariCP?这要先从BoneCP说起: ...
将写好的kettle工程部署到Linux下后,同步的数据都成了乱码,幸运的是数据库有备份. 下面就说一下,kettle工程如何同步两端编码格式都是utf8的数据库. 我们只需要更改kettle数据库连接方式已utf8的方式连接即可,如下图: 在Options添加参数 characterEncoding为utf8即可
Oracle ORA 错误大全 ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常. ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程: ...
数据集的缓冲模式(Cached mode)是将数据库服务器的数据缓冲在客户端内存中进行处理,不再依赖服务器.只有当数据需要提交数据库服务器进行保存时,才将变更数据一次性提交数据库服务器. 数据集缓冲模式的最大优点是减少了对数据库服务器的资源消耗,甚至可以在网络断开的情况下,对数据进行处理然后在网络连接后,提交数据库保存.与传统的2层架构数据库软件相比,有巨大 ...Driver class 'oracle.jdbc.driver.OracleDriver' could not be found, make sure the 'Oracle' driver (jar file) is installed.oracle.jdbc.driver.OracleDriver刚刚下载了spoon,准备写一个简单的示例测试一下,登录数据库的时候遇到了这个错误,看错误描述就是找不到相应的oracle驱动,如果你安装了oracle,那么在本地就可以找到所需的驱动。搜索&jdbc&即可,下面通常有形如ojdbc5.jar,ojdbc5_g.jar等文件&&ojdbc5.jar (1,996,228 字节)& 用于 JDK 1.5 的类。它包含 JDBC 驱动程序类,但不包含在 Oracle Object 和 Collection 类型中支持 NLS 的类。ojdbc5_g.jar (3,081,328 字节)& 与 ojdbc5.jar 一样,除了类通过&javac -g&编译并包含跟踪代码。具体说明可参考oralce官网说明:/technetwork/cn/articles/oem/jdbc-555-zhs.html&我的办法是把本地找到的ojdbc.jar文件放到了 data-integration/libswt/win32 下面,当然也可以放到data-integration/lib等程序可以找到的位置,也可以修改一下系统的环境变量,使该驱动可以被找到&切记,要重启spoon,要不然无论你怎么折腾,都会报错的【转帖】数据迁移之Kettle的使用小结 - 艾思派客 - 博客园
致力于国际优秀开源BI套件SpagoBI在中国的普通推广,用数据开启中小企业智慧之门;
数据迁移之Kettle的使用小结&&&&&&&
有五个数据库,其中两个SQL Server还有三个是Oracle10G。
将两个SQL Server中的业务数据分别依照特定的逻辑迁移到三个Oracle数据库中。
Kettle的使用(基础)
Kettle的安装和配置
关于Kettle的安装可以直接到官网上去下载。
对于Kettle的配置需要有一个数据库,Kettle的数据库负责存储Kettle自身需要的元数据描述、任务、转换等,Kettle默认的登陆信息是admin/admin。
创建Oracle数据库连接直接依照提示输入即可,下图例出了SQL Server的连接。
SQL Server的连接注意区分Database Name和Instance Name。
Kettle的基础概念
作业,负责将[转换]组织在一起进而完成某一块工作,通常我们需要把一个大的任务分解成几个逻辑上隔离的作业,当这几个作业都完成了,也就说明这项任务完成了。
转换,定义对数据操作的容器,数据操作就是数据从输入到输出的一个过程,可以理解为比作业粒度更小一级的容器,我们将任务分解成作业,然后需要将作业分解成一个或多个转换,每个转换只完成一部分工作。
Kettle使用基础示例
Kettle的错误处理,有很多场景需要用到错误日志记录,如迁移过程中提示数据自身的问题、主/外键错误、违反约束等都要将当前场景记录到一个地方供后续特殊处理。
错误信息配置
数据量很大的情况可以加上过滤参数处理
这块要注意到连接所用到的原始数据一定是排过序的
baidu文库#使用kettle数据迁移时,速度过慢,求解决方法?
新旧系统替换时的数据迁移,Oracle到MySQL,表结构有很大不同,我们采用的是发散式的迁移方式,保证数据的一致性。但是实际运行时发现非常慢,大概在130条/秒 这样的速度,无法接受。
后来怀疑,是不是发散式的迁移方式,会导致同一条SQL执行多次造成数据库查询缓慢,想用批量的方式进行导入,同时保证数据的一致性, 由于本人刚开始接触kettle,不太会使用,求大神指点!
已有帐号?
无法登录?
社交帐号登录

我要回帖

更多关于 oracle迁移到mysql 的文章

 

随机推荐