kettle快速便捷从开发环境迁移到生产环境
2012-01-30 17:14
375 查看
问题描述:之前每次kettle采集程序从开发环境导入到生产环境后都要打开每个trans然后修改db connection为生产环境的db connection,如果涉及的trans或job比较多的话,修改db connection需要花费较长时间,且还经常有遗漏,是否有便捷的途径解决这个问题呢???
测试方案1:直接修改kettle metadata数据库中的涉及到DB connection的table,比如开发环境导入到生产环境后,直接写sql语句修改r_step_database表中把tpush30替换成push30,语句如下:
经测试,此种方案不可行,尽管元数据库中已修改,但是spoon中还是显示原来的db connection,具体原因未明。
测试方案2:借鉴自Setting up Development and Production Pentaho PDI Repositories(http://www.johndz.com/2009/10/setting-up-development-and-production.html),详细步骤如下:
1、修改开发环境db connection name,使其和生产环境connection name保持一致,其中开发环境db connection指向开发数据库实例,生产环境指向生产数据库实例;
2、修改开发环境和生产环境的配置信息:
![](http://pic002.cnblogs.com/images/2012/133256/2012013017033766.jpg)
==》勾选只保存使用的数据库连接到XML、在打开/导入时询问替换连接;去选打开/ 导入时是否替换数据库连接,如下图:
![](http://pic002.cnblogs.com/images/2012/133256/2012013017045093.jpg)
3、导出开发环境特定目录下的trans和job,在repository explorer中选择特定目录,右键选中--export
![](http://pic002.cnblogs.com/images/2012/133256/2012013017090045.jpg)
4、导入到生产环境中,导入刚才从开发环境中导出的文件
![](http://pic002.cnblogs.com/images/2012/133256/2012013017105379.jpg)
测试结论:测试结果表明此种方案便捷可行!
Detaillee
2012-1-30
测试方案1:直接修改kettle metadata数据库中的涉及到DB connection的table,比如开发环境导入到生产环境后,直接写sql语句修改r_step_database表中把tpush30替换成push30,语句如下:
update r_step_database c set id_database=( select distinct id_database --a.id_database,a.name,a.host_name,a.database_name,a.username,a.password from r_database a --inner join r_step_database b --on a.id_database=b.id_database where a.name='push30' ) where c.id_database= ( select distinct a.id_database from r_database a where a.name='tpush30' )
经测试,此种方案不可行,尽管元数据库中已修改,但是spoon中还是显示原来的db connection,具体原因未明。
测试方案2:借鉴自Setting up Development and Production Pentaho PDI Repositories(http://www.johndz.com/2009/10/setting-up-development-and-production.html),详细步骤如下:
1、修改开发环境db connection name,使其和生产环境connection name保持一致,其中开发环境db connection指向开发数据库实例,生产环境指向生产数据库实例;
2、修改开发环境和生产环境的配置信息:
![](http://pic002.cnblogs.com/images/2012/133256/2012013017033766.jpg)
==》勾选只保存使用的数据库连接到XML、在打开/导入时询问替换连接;去选打开/ 导入时是否替换数据库连接,如下图:
![](http://pic002.cnblogs.com/images/2012/133256/2012013017045093.jpg)
3、导出开发环境特定目录下的trans和job,在repository explorer中选择特定目录,右键选中--export
![](http://pic002.cnblogs.com/images/2012/133256/2012013017090045.jpg)
4、导入到生产环境中,导入刚才从开发环境中导出的文件
![](http://pic002.cnblogs.com/images/2012/133256/2012013017105379.jpg)
测试结论:测试结果表明此种方案便捷可行!
Detaillee
2012-1-30
相关文章推荐
- kettle--window开发环境和linux运行环境的迁移
- 快速迁移可持续使用的开发环境
- 软件开发环境-开发环境、测试环境、生产环境的区别
- 手把手,快速搭建 Cocos2d-HTML5 开发调试环境 分享0
- 快速配置安卓开发环境jdk+sdk
- 最快速的Android开发环境搭建ADT-Bundle及Hello World .
- 最快速的Android开发环境搭建ADT-Bundle及Hello World
- 快速安装VIM开发环境
- 如何快速搭建Cocos2d-JS游戏开发环境
- 生产环境MySQL快速备份工具XtraBackup使用案例
- iOS 快速切换开发环境
- 安卓环境搭建3 (最快速的Android开发环境搭建ADT-Bundle及Hello World)
- SPRINGBOOT中如何进行开发环境和生产环境的配置?
- EBS开发之环境迁移
- ubuntu环境下快速搭建开发环境
- CentOS7 快速搭建Nodejs开发环境
- 快速搭建J2EE开发环境主要配置参数
- Maven_如何为开发和生产环境建立不同的配置文件 --我的简洁方案
- [转] 使用NVM快速搭建NODE开发环境
- Android开发快速入门(环境配置、Android Studio安装)