WebSphere中DB2JDBC驱动配置问题

来源:互联网 发布:reactjs 循环遍历json 编辑:程序博客网 时间:2024/06/09 23:39
  • 现象

Linux/Unix环境下,在 WebSphere Application Server 中,当应用程序连接 DB2 数据源时出现了下面的错误信息:
"java.lang.UnsatisfiedLinkError: SQLConnect"

  • 原因

 究其原因,是因为我们使用db2admin用户安装运行数据
库,使用root用户安装运行WAS,而使用type2时需要引入db2的一些系统环境变量。

  • 解决方法

在 WebSphere Application Server 中,如果您的应用程序连接 DB2 数据源时出现了下面的错误信息 "java.lang.UnsatisfiedLinkError: SQLConnect",请按照下面的步骤配置:
1. 停止 WebSphere 应用程序服务器
2. 运行 #. ./db2profile (在 <DB2INSTANCE_HOME>/sqllib下)
3. 或者您可以直接设置操作系统的共享库路径的环境变量,使其包括 <DB2INSTANCE_HOME>/sqllib/lib 目录(例如在 AIX 上为 LIBPATH 和 LD_LIBRARY_PATH),这样才能找到在连接 DB2 数据源时所需要的 libdb2jdbc.so 文件
4. 重新启动应用程序服务器,执行您的程序
注意:
1. “#. ./db2profile”命令中一定注意最前面的一个“.”不能少
2. 请检查您的 WebSphere Application Server 的版本是 32 位还是 64 位,如果是 32 位,要确认执行的是 32 位 DB2 实例的 db2profile 文件,如果是 64 位,要确认执行的是 64 位 DB2 实例的 db2profile 文件
1)执行“java -fullversion”或“java -version”可以看到 JDK 是 32 位还是 64 位
2)执行“db2level”可以看到 DB2 实例是 32 位还是 64 位,例如:
DB21085I 实例 "DB2" 使用 "32" 位和 DB2 代码发行版 "SQL08016",级别标识为
"02070106"。
信息性标记为 "DB2 v8.1.6.574"、"s040616" 和"WR21340",修订包为 "6"。
产品是在 "D:/PROGRA~1/IBM/SQLLIB" 处安装的。
另外 #ls -l <DB2INSTANCE_HOME>/sqllib 也可以看到当前 lib 目录是指向 lib32 目录还是 lib64 目录

原创粉丝点击