weblogic加入第三方数据库代理驱动jar包(Oracle为例)

做的是国企项目,项目本身业务并不复杂,最复杂的却是服务器部署问题,对方给提供的服务器分内网、外网交换网,应用在交换网,数据库在内网,应用不能直接访问内网数据库,只能通过安全隔离网闸访问内网数据库,安全隔离网闸(相当于数据库代理)提供了一个驱动包,类似于oracle的jdbc驱动包。而且应用服务器必须使用weblogic。

重点来了,我们是厂商,有一天国企的一个负责人给我们这边开发人员打电话,说数据库隔离装置升级了,然后隔离装置厂商提供了一个oracle的代理驱动包SqlProxyCfg_Jdbc.jar。给了驱动加载的字符串,连接的url,ip以及端口。然后就没然后了,由于是第一次应对这样的事,然后就询问对方如何在weblogic是配置,对方技术人员也一无所知,只会开发此jar包以及如何通过隔离装置穿透。既然对方不知道,然后就自己百度谷歌,试了网上很多方法,始终报找不到驱动程序异常,这事耽搁下来了三天,在第四天想起这事,就拿着公司服务器上的weblogic折腾了一番终于配置成功,其实失败的原因是配置CLASSPAT的时候":"写成了";"符号 然后悲催人生就开始了,下面是配置细节。


1. 将驱动包SqlProxyCfg_Jdbc.jar存放到weblogic安装的lib目录,也就是你的域下,具体路径如下:

/weblogic_cs/Oracle/Middleware/user_projects/domains/base_domain/lib

2,配置CLASSPATH

/weblogic_cs/Oracle/Middleware/user_projects/domains/base_domain/bin 路径下找到startWebLogic.sh启动文件,

#cd 上述路径

#vi startWebLogic.sh

在CLASSPATH后添加驱动jar包路径,修改如下(注意"${DOMAIN_HOME}"路径,如没有配置该路径可将驱动jar包绝对路径添加到后面):

CLASSPATH="{SAVE_CLASSPATH}:{DOMAIN_HOME}/lib/SqlProxyCfg_Jdbc.jar"

注意CLASSPATH字符串中的":"来分割,而不是";" 我在配置之初就犯了次错导致配置数据源的时候一直找不到驱动包异常。

按esc键盘退出并:wq!保存

3,重启startWebLogic.sh


配置数据源

1,启动完成之后,登录weblogic控制台

然后点击左侧菜单服务---》数据源---》新建一--》一般数据源

2,"名称"为"jndiisc","JNDI名称"为"jndiisc","数据库类型"选择"Oracle",然后点击"下一步":

3,"数据库驱动程序"选择倒数第四个选项,与下图一致:

4,此页面默认,点击"下一步":

5,填写内容如下:

数据库名称:v_typt

主机名:172.28.15.234

端口:18600

数据库用户名:isc

密码:isc

然后点击下一步:

  1. 修改内容如下:

驱动程序类名称:sgcc.nds.jdbc.driver.NdsDriver

URL:jdbc:nds://172.28.15.234:18600

_typt?appname=app_typt

然后点击"测试配置":

  1. 测试配置成功后会显示"连接测试成功",然后点击"完成":

新建数据源成功,点击"jndiisc":

  1. 点击"锁定并编辑",然后点击"目标":

  2. 勾选"AdminServer",然后点击保存:

  3. 保存后显示"设置更新成功",然后点击左侧"激活更改":

至此数据源配置成功,数据库隔离装置配置也成功啦

相关推荐
m0_588758485 小时前
PHP源码运行受主板供电影响吗_供电相数重要性说明【技巧】
jvm·数据库·python
qq_413847405 小时前
如何处理MongoDB跨分片事务报错_4.2+分布式事务的限制与两阶段提交延迟
jvm·数据库·python
InfinteJustice5 小时前
HTML函数在超频CPU上更流畅吗_超频对HTML函数影响【技巧】
jvm·数据库·python
AKA__Zas5 小时前
初识 事务
java·开发语言·数据库·sql
kongba0075 小时前
2026年4月19日 kimi记忆备份
java·前端·数据库
xyyaihxl5 小时前
【SQL技术】不同数据库引擎 SQL 优化方案剖析
数据库·sql
21439655 小时前
Less如何构建CSS样式库_通过继承机制优化组件化开发
jvm·数据库·python
qq_413847405 小时前
如何通过 reflect.Value 获取切片的底层值
jvm·数据库·python
zhangchaoxies5 小时前
JavaScript中单线程事件循环EventLoop的卡顿预警
jvm·数据库·python
InfinteJustice5 小时前
Laravel Blade 中高效筛选并限制关联分类数据的实践指南
jvm·数据库·python