1. 概述
1.1 版本
版本 | 功能变动 |
---|---|
- | - |
4.0.14 | SystemConfig.driverUpload 参数默认值修改为 true |
4.1.5.1 | 新增驱动加载顺序配置项 |
4.1.12.3 | 驱动管理按钮位置、样式优化 |
1.2 应用场景
在 FDL 中配置数据连接时,一些数据库需要上传驱动才能连接成功。
1.3 功能说明
FDL 中提供「驱动管理」按钮,点击该按钮,可在跳转后页面中上传需要的驱动文件。如下图所示:
「驱动管理」使用的是热加载,上传驱动后不需要重启 FDL 即可直接使用驱动 。
注:只有超级管理员才能使用「驱动管理」功能。
2. 前提条件
2.1 4.0.14 之前版本
需要将 FineDB 数据库中 fine_conf_entity 表字段 SystemConfig.driverUpload 设置为 true:
默认状态下参数值为false
值为 true:允许通过驱动管理上传驱动。
值为 false:禁止通过驱动管理上传驱动。上传时会报错:不允许上传驱动jar包,可以修改SystemConfig.driverUpload配置值开启该功能。
1)正式工程中,FineDB 数据库必须配置 外接数据库 ,管理员可到「管理系统>系统管理>常规」中,查看配置的外接数据库信息。如下图所示:
2)找到外接数据库后,在 FDL 工程中建立外接数据库的数据连接,新建数据连接步骤请参见:创建并管理数据源
若未配置外接数据库,则需要使用 FineDataLink 连接内置数据库,详情参见:配置Hsql数据源
3)在数据开发模块中新建一个定时任务,拖入「数据同步」节点,在「数据来源」Tab 中,查询外接数据库中是否有 ID=SystemConfig.driverUpload 的字段,如下图所示:
注:不同数据库语句可能不同,请根据实际情况调整。
select * from fine_conf_entity
where id='SystemConfig.driverUpload'
场景一:查询结果为空
若查询结果为空,需要再拖入一个「SQL 脚本」节点,新增 ID 为 SystemConfig.driverUpload,VALUE 为 true 的一条字段,仅运行「SQL 脚本」节点。如下图所示:
注:不同数据库语句可能不同,请根据实际情况调整。
SQL 脚本如下所示:
INSERT INTO FINE_CONF_ENTITY (ID,VALUE)
VALUES('SystemConfig.driverUpload','true')
场景二:查询结果为 false
若查询结果值为 false,则需要修改为 VALUE 值为 true。
定时任务中再拖入一个「SQL 脚本」节点,使用 SQL 语句更新 VALUE 值,最后仅运行「SQL 脚本」节点。
UPDATE FINE_CONF_ENTITY SET FINE_CONF_ENTITY.VALUE = 'true'
WHERE ID='SystemConfig.driverUpload'
场景三:查询结果为 true
若该条数据 VALUE 值为 true,不需要进行操作,参考本文第三章上传驱动即可。
4)向 fine_conf_entity 表中修改字段值或新增字段后,需要重启 FDL 工程。重启后再次登录工程,即可通过「驱动管理」功能上传驱动。
2.2 独立部署 4.0.14 以及之后的版本
默认开启,直接参考本文第三章内容即可。
3. 操作步骤
3.1 上传数据库驱动
1)超级管理员进入 FDL 工程,点击「管理系统>数据连接管理>驱动管理」。如下图所示:
2)点击「新建」按钮,输入驱动名称后,点击「上传文件」按钮,上传驱动文件;驱动文件上传成功后,选择需要的驱动,设置驱动加载顺序,点击「保存」按钮即可。如下图所示:
注:数据库驱动可以在对应数据库的帮助文档下载,也可以让数据库管理员提供。
注意事项:
1)若有多个驱动 JAR 包,不清楚选择哪个驱动,可以咨询对应的数据库管理员。
2)上传的驱动位于 %FineDataLink_home%\webapps\webroot\WEB-INF\drivers 下。
3)若有多个驱动 JAR 包,不清楚选择哪个驱动,可以咨询对应的数据库管理员。
4)当遇到一些驱动导致的问题后,可以快速修改驱动加载方式从而能够实现快速的连接。默认选优先加载当前方式上传驱动:
优先加载当前方式上传驱动:先加载驱动管理的 jar:WEB-INF/drivers/hive/**.jar,若无对应文件则加载应用的 jar:WEB-INF/lib/**.jar。
仅加载当前方式上传驱动:仅加载驱动管理的 jar:WEB-INF/drivers/hive/**.jar。
3.2 使用上传的数据库驱动
可参考具体数据连接配置文档,配置数据连接。
3.3 删除驱动
若要删除某个已存在的数据库驱动,可进入驱动管理界面直接点击「删除」按钮。如下图所示: