原文:http://hzcaixiao.iteye.com/blog/471471
以前一直用thin的方式来连接Oracle,现在需要使用oci的方式,听说性能要好些。
于是从jdbc:oracle:thin:@10.1.1.2:1521:dev-dbc改成:jdbc:oracle:oci8:@dev-dbcommon
我的环境是Ubuntu9.04,JBOSS1.4,Oracle 10.0.2,OCI
OCI方式(Oracle Client Interface):一组可对ORACLE数据库进行存取的接口子例程(函数),通过在第三代程序设计语言(如C语言)中进行调用可达到存取ORACLE数据库的目的。
有两种方式可以得到OCI的
方式一、安装Oracle 客户端
方式二、下载OTN的instant client(http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxsoft.html)
方法一我尝试了N次没有成功,估计是Ubuntu安装Oralce Client版本问题
成功的是使用方式二:
1)下载oracle-instantclient-basic-10.2.0.4-1.i386.zip
(?) ,
oracle-instantclient-devel-10.2.0.4-1.i386.zip
(?)
解压到目录:/opt/instantclient_10_2
2)配置环境变量:
ORACLE_HOME=/opt/instantclient_10_2
TNS_ADMIN=$ORACLE_HOME(貌似这个变量还是需要的,否则好像仍然会找不到tnsnames.ora,报TNS的错误)
LD_LIBRARY_PATH=$ORACLE_HOME/lib
export
ORACLE_HOME
export TNS_ADMIN
export
LD_LIBRARY_PATH(这个变量貌似不用配置,对应java.library.path,后面讲)
3)设置classes12.jar和ojdbc.jar:
cp classes12.jar和ojdbc.jar到
/opt/jboss/server/default/lib下
4)配置tnsnames.ora:
在instantclinet_10_2下增加tnsname.ora文件:
dev-dbcommon=
(description=
(address_list=(address=(protocol=tcp)(host=db.dev.dbc.taobao.net)(port=1521)))
(connect_data=(service_name=dev-dbc)(server=dedicated))
)
JBoss启动过程中出现了几个问题:
问题一:java.lang.UnsatisfiedLinkError: no XXX in java.library.path
解决方法:查看Jboss启动脚本
JBOSS_NATIVE_DIR="$JBOSS_HOME/bin/native"
修改成:JBOSS_NATIVE_DIR="/opt/instantclient_10_2"
问题二:java.sql.SQLException: ORA-12154: TNS:could not resolve the connect identifier specified
解决方法:配置TNS_ADMIN
但是有个比较奇怪的问题是必须用root用户登录后,启动Jboss,TNS才没有问题,估计是文件的权限问题。
分享到:
相关推荐
`standardjbosscmp-jdbc.xml`也是位于`X:jboss4serverdefaultconf`目录下的配置文件,主要用于配置JBoss CMP容器。同样地,开发者可以选择自定义的`jbosscmp-jdbc.xml`文件来替代默认配置,并放置于EJB .jar文件的`...
jboss配置数据源 jboss配置数据源是指在jboss服务器上配置oracle数据库的数据源,以便在jboss应用程序中使用oracle数据库。下面是jboss配置数据源的详细步骤: 首先,需要将oracle的JDBC驱动程序复制到ClassPath下...
### JBoss数据库配置详解 #### 一、引言 JBoss AS 4.0是一款流行的开源应用服务器,它默认集成了HypersonicDB作为其内置数据库。然而,在实际开发过程中,开发者可能需要与HypersonicDB之外的其他数据库进行集成。...
### JBoss数据库配置详解 #### 一、引言 JBoss AS 4.0是一款流行的开源应用服务器,它默认集成了HypersonicDB作为其内置数据库。然而,在实际开发过程中,开发者可能需要与HypersonicDB之外的其他数据库进行集成。...
在配置文件中,有几种不同类型的Oracle驱动和连接URL,包括OCI Type 2(适用于本地Oracle客户端)、OCI Thin Type 4(轻量级连接,不依赖于Oracle客户端)以及OCI XA Type 2(用于分布式事务处理)。这些驱动的类名...
Oracle JDBC驱动分为不同版本,包括 Thin、OCI、JDBC-ODBC Bridge 和 WebLogic Server Driver。 1. ** Thin 驱动**:也称为纯Java驱动,是一种类型4 JDBC驱动。它不需要Oracle客户端软件,直接通过网络与数据库...
- 检查代理安装:确保 APM 代理已正确安装并配置在 JBoss 应用服务器上。 - 查看日志:查看代理和服务器的日志文件,以查找任何错误或警告信息。 9. AWR 数据缺失的检查点: - AWR 数据源连接:确认 IT ...
3. 数据源支持:在Java应用服务器中,如Tomcat或JBoss,可能需要`ucp.jar`(Universal Connection Pool),这是Oracle提供的统一连接池管理库,可以更有效地管理和复用数据库连接。 4. Oracle其他工具库:有时,...