客户切换服务器,涉及数据迁移。由于数据不是太庞大,不想用备份迁移来实现。
数据库有两种,一个是mysql , 一个是clickhouse
所遇问题:
1、mysql迁移时,字段为''的值,转换为null,于是有由不能为null的就报错了
解决办法:
C:\Users\用户名.kettle目录中找到kettle.properties,增加 KETTLE_EMPTY_STRING_DIFFERS_FROM_NULL=Y
2、有一张表六百万条记录,传输了一个多小时。
解决办法:经查需要设置连接参数
defaultFetchSize:5000
useCursorFetch : true 相当于告诉数据库,分批读取数据,每次打包5000条回来
rewriteBatchedStatements : true 插入数据的时候,批量插入
useServerPrepStmts : true 启动预编译
useCompression : true 客户端跟服务器之间的数据压缩传输
表输出,调整提交记录数量由1000改为10000
主流程
invok_trans
runtrans
setvariable
trans_table
标签:5000,kettle,传输,多表所遇,mysql,true From: https://www.cnblogs.com/bianguji/p/17396146.html