ExecuteSQL
通过配置数据库连接池并指定SQL语句来查询出结果,其输出结果为Avro格式,由于带有数据库表的元数据信息。
示例
此处以Oracle为示例,说明该组件的使用。
Oracle连接信息
- IP: 172.18.5.13
- Port: 1521
- User: orchsym
- Password: orchsym1234
- Service Name: dev
- Driver Jar: ojdbc8.jar
- JDBC URL: jdbc:oracle:thin:@172.18.5.13:1521:dev
配置
流程只是简单的查询并将记录写入日志。
首先, ExecuteSQL中首先需要创建数据库连接池,然后配置查询SQL语句,其他设置默认:
并配置数据库连接池参数:
其中:
- 驱动包的路径必须是有效的存在的路径,且该路径为与产品同机器的绝对路径。
- 用户名密码,设置后,被标注为“敏感值设置”,实际上为了安全,是不会显示字面值的,且已经设置上。
配置好数据库连接池保存后,则需要“启用”连接池服务。
最后,由于是测试,最好将ExecuteSQL组件“调度”下的“运行安排”设置大些,比如“1 day”, 要不然会重复查询多次,然后就可以启动组件了。
结果
查询出来的结果为Avro格式:
如果修改查看模式为“格式化”,则可看到每条数据:
说明
针对其他数据库,也类似,提供驱动包和- JDBC URL以及访问用户名密码来创建数据库连接池。
同时需注意连接池用户的权限问题,否则SQL查询时可能报诸如“没有表或试图”的错误。