# extract
**Repository Path**: xdyike-liberty/extract
## Basic Information
- **Project Name**: extract
- **Description**: 数据库表文件抽取与加载
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-04-29
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
##引入依赖
下载kettle: pdi-ce-9.0.0.0-423
解压后将 data-integration/lib 目录中的下面三个jar包 插入到本地maven资源库
```
mvn install:install-file -Dfile=D:/tmp/kettle/kettle-core-9.0.0.0-423.jar -DgroupId=pentaho-kettle -DartifactId=kettle-core -Dversion=9.0.0.0-423 -Dpackaging=jar
mvn install:install-file -Dfile=D:/tmp/kettle/kettle-engine-9.0.0.0-423.jar -DgroupId=pentaho-kettle -DartifactId=kettle-engine -Dversion=9.0.0.0-423 -Dpackaging=jar
mvn install:install-file -Dfile=D:/tmp/kettle/metastore-9.0.0.0-423.jar -DgroupId=pentaho-kettle -DartifactId=metastore -Dversion=9.0.0.0-423 -Dpackaging=jar
mvn install:install-file -Dfile=D:/tmp/kettle/jsch-0.1.54.jar -DgroupId=pentaho-jsch -DartifactId=jsch -Dversion=0.1.54 -Dpackaging=jar
mvn install:install-file -Dfile=D:/tmp/kettle/jxl-2.6.12.jar -DgroupId=jxl -DartifactId=jxl -Dversion=2.6.12 -Dpackaging=jar
```
在pom.xml中引入必需的jar包
```
9.0.0.0-423
0.1.54
pentaho-kettle
kettle-core
${pentaho.kettle.version}
pentaho-kettle
kettle-engine
${pentaho.kettle.version}
pentaho-kettle
metastore
${pentaho.kettle.version}
pentaho-jsch
jsch
${pentaho.jsch.version}
org.apache.commons
commons-vfs2
2.2
jxl
jxl
2.6.12
```
##配置文件 示例
###db2file.properties
```
########################## Extract 工具导出数据配置 ##########################
########################## 导出数据文件类型 ##########################
# 操作类型(db2file=表->文本文件, db2excel=表->Excel文件, db2db=表->表, file2db=文本文件->表, excel2db=Excel文件->表)
kettle.operate.type=db2file
########################## 表输入 数据源 配置 ##########################
# 表输入 数据库 类型
kettle.input.db.type=mysql
# 表输入 数据库 IP地址 (示例: 127.0.0.1)
kettle.input.db.server=localhost
# 表输入 数据库 端口号(示例: 3306)
kettle.input.db.port=3306
# 表输入 数据库 库名
kettle.input.db.database=bfat-v1.0
# 表输入 数据库 用户名
kettle.input.db.username=root
# 表输入 数据库 密码明文
kettle.input.db.password=root
########################## SQL 脚本路径配置 ##########################
# 表输入 SQL脚本路径可以多个,以英文逗号分隔 (只允许绝对路径 使用 / 斜杠)
kettle.input.sql.path=D:/data/kettle/bfat/sqls,D:/data/kettle/bfat/sqls_his
########################## 表输出 数据源 配置 ##########################
# 表输出 数据库 类型
kettle.output.db.type=mysql
# 表输出 数据库 IP地址 (示例: 127.0.0.1)
kettle.output.db.server=localhost
# 表输出 数据库 端口号(示例: 3306)
kettle.output.db.port=3306
# 表输出 数据库 库名
kettle.output.db.database=bfat-v1.0
# 表输出 数据库 用户名
kettle.output.db.username=root
# 表输出 数据库 密码明文
kettle.output.db.password=Encrypted 2be98afc86aa7f2e4cb79ce10cc9da0ce
########################## 文件输出(文本文件与Excel文件) 导出文件路径配置 ##########################
# 文件输出 导出文件路径(使用 / 斜杠)
kettle.output.file.path=D:/data/kettle
# 文件输出 导出文件名是否带有日期
kettle.output.file.name.date=Y
# 文件输出 导出文件名 追加日期格式
kettle.output.file.name.dateformat=-yyyyMMdd
########################## 文件输出(仅文本文件) 导出文件路径配置 ##########################
# 文件输出 导出文件列数据分隔符(推荐使用组合的分隔符,这样不容易与表字段数据重复)
kettle.output.file.separator=|;
# 文件输出 导出文件是否压缩 (Zip-Zip压缩 GZip-GZip压缩 None-否)
kettle.output.file.compress=None
```
###db2excel.properties
```
########################## Extract 工具导出数据配置 ##########################
########################## 导出数据文件类型 ##########################
# 操作类型(db2file=表->文本文件, db2excel=表->Excel文件, db2db=表->表, file2db=文本文件->表, excel2db=Excel文件->表)
kettle.operate.type=db2file
########################## 表输入 数据源 配置 ##########################
# 表输入 数据库 类型
kettle.input.db.type=mysql
# 表输入 数据库 IP地址 (示例: 127.0.0.1)
kettle.input.db.server=localhost
# 表输入 数据库 端口号(示例: 3306)
kettle.input.db.port=3306
# 表输入 数据库 库名
kettle.input.db.database=bfat-v1.0
# 表输入 数据库 用户名
kettle.input.db.username=root
# 表输入 数据库 密码明文
kettle.input.db.password=root
########################## SQL 脚本路径配置 ##########################
# 表输入 SQL脚本路径可以多个,以英文逗号分隔 (只允许绝对路径 使用 / 斜杠)
kettle.input.sql.path=D:/data/kettle/bfat/sqls,D:/data/kettle/bfat/sqls_his
########################## 表输出 数据源 配置 ##########################
# 表输出 数据库 类型
kettle.output.db.type=mysql
# 表输出 数据库 IP地址 (示例: 127.0.0.1)
kettle.output.db.server=localhost
# 表输出 数据库 端口号(示例: 3306)
kettle.output.db.port=3306
# 表输出 数据库 库名
kettle.output.db.database=bfat-v1.0
# 表输出 数据库 用户名
kettle.output.db.username=root
# 表输出 数据库 密码明文
kettle.output.db.password=Encrypted 2be98afc86aa7f2e4cb79ce10cc9da0ce
########################## 文件输出(文本文件与Excel文件) 导出文件路径配置 ##########################
# 文件输出 导出文件路径(使用 / 斜杠)
kettle.output.file.path=D:/data/kettle
# 文件输出 导出文件名是否带有日期
```