历史版本24 :配置Oracle数据源 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

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

ojdbc14.jar

上传驱动包的具体步骤可参见:驱动管理

Oracle 19c 及以上

推荐使用最新的驱动包,驱动包下载详情参见:驱动下载,选择指定版本的 ojdbc8.jar 

注:上传前需要先关闭工程,在%FineDataLink%/webapps/webroot/WEB-INF/lib 下将原先的 ojdbc8 jar删除,然后替换成新的驱动后再重启工程。

2.3 创建数据连接

2.3.1 方案一:thin 方式

若用户需要使用该数据连接进行数据开发任务、数据服务任务或者  LogMiner 模式的数据管道,则使用如下方案。

创建数据连接步骤请参见:创建并管理数据源

部分设置项说明:

8.png


部分设置项介绍如下表所示:

设置项
说明
若驱动是内置的,选择「默认」;若驱动是自己上传的,可以选择「自定义」,勾选自己要的驱动。

注:由于 Oracle 数据库区分大小写,请在填写相关信息时,注意大小写,与数据库实际名称、模式保持一致。

驱动、数据库名称、URL


驱动
DatabaseName
URL

oracle.jdbc.driver.

OracleDriver 

sid_name
sid_name 可以通过 select INSTANCE_NAME from v$instance;查询
jdbc:oracle:thin:@ip:port:sid_name
service_name

jdbc:oracle:thin:@//ip:port/service_name 

或者

jdbc:oracle:thin:@ip:port/service_name

TNSName

注:Oracle 安装路径下需要有 tnsnames.ora 文件

jdbc:oracle:thin:@TNSName


TNSName 说明如下:

jdbc:oracle:thin:@TNSName URL 中,TNSName 的值为tnsnames.ora文件中 ORCL 的值,如下图所示:

9.png

完整的 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)该设置项控制的功能范围:

  • 定时任务:对应数据源读写、SQL脚本执行、参数赋值、全局赋值参数

  • 管道任务:对应数据源读写

  • 数据发布:对应数据源查询

  • 库表管理:SQL执行

2.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 设置项说明请参见本文 2.3.1 节内容。

11.png

3. 使用数据源编辑

数据开发-定时任务

配置好数据源后即可在「定时任务」中使用数据源,详情参见:定时任务概述

数据服务

配置好数据源后即可在「数据服务」中将使用数据源,详情参见:数据服务概述

数据开发-实时任务

配置好数据源后即可在「实时任务」中将使用数据源,详情参见:实时任务概述

数据管道

配置好数据源后即可在「数据管道」中将使用数据源,详情参见:数据管道概述

1)其中若使用数据源进行管道任务设置,且数据来源为 PDB 则需要修改连接数据库为对应的 PDB 数据库。

2)FineDataLink 管道任务对于 Oracle 数据源,需要开启所有补全级别的日志,参见Oracle环境准备,但是任何级别的补全日志都不补全 LOB 和 LONG 类型字段。

因此 FineDataLink 管道任务 Oracle 数据源下,BLOB、CLOB、NCLOB、LONG、RAW、LONGRAW、BFILE字段的同步做自动屏蔽处理。

3)字段映射标识对应字段删除,不支持手动启用并为此类字段配置映射。任务运行时,同步、建表将不包含此字段。

注1:仅首次配置表时允许调整字段映射。

注2:4.1.1 及之后版本,Oracle 数据源作为源表,支持 无主键同步

44.png