由于kettle是纯java编辑,所以kettle连接mysql库的时候需要mysql的java连接包,百度下载一个mysql的java连接驱动。
将下载的mysql jdbc包解压,取出mysql-connector-javajar包(这里驱动包有版本号)。放入kettle的lib目录下面。
3
重新启动kettle。可以测试连接,此时连接已经连上。
linux 下,可以使用cli程序把csv文件导入到数据库。具体代码如下:
$ORACLE_HOME/bin/sqlplus -S username/password@instanceName > /dev/null 2>&1 <<!!#对sqlplus作一些设置,使之只输出我们需要的文本
set echo off
set pagesize 0
set verify off
set feedback off
set termout off
set linesize 3000
set trimspool on
#查询输出到临时文件
spool /tmp/some_tmpcsv
#select语句
select column1||','||column2||','||column3
from some_table where condition
spool off
#这里可以添加多个查询,且每个查询可输出到不同的文件,如下面注释
#spool /tmp/some_tmpcsv
#select column1||','||column2||','||column3
#from some_table where condition
#spool off
set markup HTML off
quit
!!
#计算记录总行数,如果是0则不发邮件
NUM=`cat /tmp/some_tmpcsv | wc -l`
if[ $NUM -gt 0 ]
then
#先写excel的每列的title
echo 'Title_Of_Column1, Title_Of_Column2, Title_Of_ColumnN' > /tmp/attachementcsv
#数据正文
cat /tmp/some_tmpcsv >> /tmp/attachementcsv
#发邮件
(
echo "From: user@somehostcom"
echo "To: user1@somehostcom"
echo "MIME-Version: 10"
echo "Content-Type: multipart/mixed;"
echo ' boundary="A_Boundary_Name_You_Can_Change_It"'
echo "Subject: Subject"
echo ""
echo ""
#附件分隔符,上面的boundary前面加--
echo "--A_Boundary_Name_You_Can_Change_It"
echo 'Content-Transfer-Encoding: x-uuencode'
echo 'Content-Type: text/csv;'
echo ' name="attachementcsv"'
echo 'Content-Disposition: attachment;'
echo ' filename="attachementcsv"'
echo ""
uuencode /tmp/attachementcsv attachementcsv
echo "--A_Boundary_Name_You_Can_Change_It"
#附件结束
) | mailx -t
fi
#删除临时文件
rm -f /tmp/csv
exit 0
建立文件资源库:点击工具->资源库->连接资源库菜单
使用文件资源库不需要用户名和密码,如果没有资源库可以点击右上角的"+"新建资源库,如下图:
第一种方式为建立数据库的资源库,本例选择使用文件资源库,选择确定后会要求选择文件资源库的路径,并给文件资源库设置一个ID和名称
果你用的是INNODB数据库,有一个最简单有效的调整,就是将INI文件里面的下面参数调整: 原始: innodb_flush_log_at_trx_commit=1 调整为: innodb_flush_log_at_trx_commit=2 具体什么意思就不解释了,试了效果好再去找度娘
java调用kettle数据库类型资源库中的ktr 此问题在1个月前或许已经接触,单是一直木有怎么用到,就被耽搁至今;问题的解决要来源于网络,其实我还想说问题的解决更多的是要靠我们自己的思想,不过多的言情,我们接下来直接进入主题吧!
以上就是关于kettle能连接多个数据库么全部的内容,包括:kettle能连接多个数据库么、kettle抽取linux下csv文件到Windows下数据库、kettle如何添加新的数据库连接类型等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)