1. 概述
1.1 版本
FineDataLink版本 | 功能变动 |
---|---|
4.0 | 定时任务读写适配 Oracle |
4.0.7 | 数据管道输入适配 Oracle |
4.0.9 | 数据管道输出适配 Oracle |
4.0.18 | 支持 Oracle18c、19c 、Oracle RAC集群作为数据管道任务读取数据源 |
4.0.20.1 | 数据服务支持 Oracle |
4.1.4 | 「高阶数据源 - Oracle(XStream)」合并至「高阶数据源 - Oracle(Logminer)」,共同由「高阶数据源 - Oracle(Logminer)」控制注册 |
4.1.11.4 | 实时任务读写适配 Oracle |
4.1.14.1 | 数据连接支持配置套接字超时(SocketTimeout 设置项中配置),控制数据库查询时间在一个合理范围内,避免出现无限等待的问题 |
1.2 应用场景
FineDataLink 支持连接 Oracle ,进行定时任务读写、管道任务读写、数据服务发布、实时任务读写。
2. 准备工作
2.1 前提条件
详情请参见:前提条件
2.2 版本和驱动
支持的数据库版本 | 驱动包下载 |
---|---|
Oracle 11.1 Oracle 11.2 / 11g-R2 Oracle 12.1 / 12c-R1 Oracle 12.2 / 12c-R2 Oracle 13 及以上 | 已内置,无需下载 |
Oracle 9.2.0 / 9i Oracle 10.1 Oracle 10.2 / 10g-R2 | 上传驱动包的具体步骤可参见:驱动管理 |
Oracle 19c 及以上 | 推荐使用最新的驱动包,驱动包下载详情参见:驱动下载,选择指定版本的 ojdbc8.jar 注:上传前需要先关闭工程,在%FineDataLink%/webapps/webroot/WEB-INF/lib 下将原先的 ojdbc8 jar删除,然后替换成新的驱动后再重启工程。 |
2.3 收集连接信息
在连接数据库之前,请收集以下信息:
数据库所在服务器的 IP 地址和端口号。
数据库的名称。
数据库的用户名和密码。
要连接的数据库模式。
3. 具体连接步骤
3.1 thin 方式
若用户需要使用该数据连接进行数据开发任务、数据服务任务或者 LogMiner 模式的数据管道,则使用如下方案。
1)管理员登录 FDL 工程,点击「管理系统>数据连接>数据连接管理」,选中某个文件夹后,新建数据连接。如下图所示:
2)设置数据连接名称(可同时修改数据连接所在目录)。如下图所示:
3)可根据数据源分类、支持形式、适配模块、数据源名称筛选数据库。如下图所示:
4)输入 2.3 节的连接信息。若驱动是内置的,选择「默认」;若驱动是自己上传的,可以选择「自定义」,勾选自己要的驱动。
模式需要连接数据库后才可以选择,所以需要先点击「点击连接数据库」按钮后,再选择「模式」。如下图所示:
注:由于 Oracle 数据库区分大小写,请在填写相关信息时,注意大小写,与数据库实际名称、模式保持一致。
部分设置项介绍如下表所示:
设置项 | 说明 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
驱动、数据库名称、URL |
TNSName 说明如下: jdbc:oracle:thin:@TNSName URL 中,TNSName 的值为tnsnames.ora文件中 ORCL 的值,如下图所示: 完整的 URL 为:jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST =(ADDRESS=(PROTOCOL=TCP)(HOST =localhost)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl))) | ||||||||||
SocketTimeout (4.1.14.1 及之后版本新增) | 1)值说明: 配置当前数据连接的套接字超时,单位为秒,默认值为 3600 输入框要求为非负整数,配置为 0 时,视为不设置超时 2)该设置项应用场景: 在网络发生抖动时,可能会出现管道&定时任务发出查询后,无限等待返回数据的问题,用户运维时,看不到报错,但实际任务已不再同步数据 配置该设置项后,将控制查询在一个合理的范围内,达到套接字超时时间后,SQL 语句会自动中断报错,避免出现无限等待的问题 3)该设置项控制的功能范围:
|
5)点击「测试连接」,若连接成功则「保存」该连接。如下图所示:
3.2 OCI 方式
若用户需要使用该数据连接进行 Xstream 方式管道任务数据同步,且数据来源为 CBD ,由于 XStream 连接依赖了oci 连接,所以不能通过 thin 方式连接 。
因此数据连接 URL 需要改为:
jdbc:oracle:oci:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1533))(CONNECT_DATA=(SID=名称)))
其中 localhost 为 oracle 所在服务器 IP,PORT 为端口、SID后需要写数据库名称。
注:SocketTimeout 设置项说明请参见本文 3.1 节内容。