目录
前言
博主介绍:
他们叫我技术总监,拥有5年BI、数据库、用友NC、帆软report、python工作经验,毕业一年被迫当上某集团部门开发经理,成立开发部,次年任命为总监。
因个人执着于技术,所以被总经理戏称为技术总监。
拥有帆软认证、项目管理工程师等认证。目前主要专研大数据方向,希望和您一起学习一起进步。
一、问题现象
1、kettle不能重启,每次重启都会闪退
2、kettle的定时任务可以运行,但是不会执行里面的程序
3、kettle定时任务脚本日志报错为,Unable to create the database cache
二、原因分析
我们正常安装好kettle后会在c盘的用户下生成.kettle的文件夹,这里面的db.cache-5.4.0.1-130即1-130类型的文件就是保存了对应的缓存数据,主要包括共享数据库链接数据及转换和作业更新的缓存数据。kettle启动和定时任务启动都会先读取缓存加快加载速度,但是这也经常造成kettle程序不能运行,定时任务运行失败。(其实亲测缓存对应用没多大的增益,可以删除该文件。但运行一段时间后会自动生成。)
三、解决方法论
1、出现问题时手工删除对应的1-130文件,再重新启动kettle即可。
2、创建bat文件,定时删除对应1-130文件,自动清理缓存。对应bat文件脚本如下。
Forfiles /p C:\Users\Administrator\.kettle /s /m db.cache-5.4.0.1-130 /c "cmd /c del /q /f @path"
大家可以参考Forfiles的语法。
forfiles命令详解 - 百度文库https://wenku.baidu.com/view/c915e8c75df7ba0d4a7302768e9951e79b8969ff.html