[原]配置WebSphere 5.1的数据库连接池

    实施WebSphere Application Server(简称WAS)时,最常见的是安装应用程序和配置数据库连接池两个问题。经参考网上的资料,这里,我尝试利用一个简单的测试案例来对其进行描述。

一、软件配置
操作系统:红旗 DC Server 5.0
应用软件:WebSphere Application Server 5.1
数据库:Mysql 4.1/Oracle 10g

测试用应用程序:

[原]配置WebSphere 5.1的数据库连接池下载文件
点击这里下载文件

(程序来自 这里,本文的大部分内容也参考自该链接)

二、安装应用程序
在成功安装WAS 5.1后,访问http://ip:9090/admin,输入标识名称(仅用于标识,与安全性无关):
点击在新窗口中浏览此图片保存到主配置”。
(这点很重要,只有保存主配置后,应用才会真正拷贝到安装目录下)
点击在新窗口中浏览此图片三、配置数据库连接池
因测试机上没有安装Oracle,故先以Mysql 为例说明,Oracle的配置是类同的。
1、放置连接类文件
先从Mysql 官网上下载连接类(Connector/J),因Mysql 版本比较老(4.1的),故选择的版本是3.1,下载地址:这里。
实际上,我们只需要mysql-connector-java-3.1.14-bin.jar文件,需把类放到服务器上,可选择与应用程序目录中:

# cd /opt/WebSphere/AppServer/installedApps/web/TestConnPoolEAR.ear/TestConnPoolWeb.war/WEB-INF/
# mkdir lib
# cd lib
# cp /root/mysql-connector-java-3.1.14-bin.jar ./
# pwd
/opt/WebSphere/AppServer/installedApps/web/TestConnPoolEAR.ear/TestConnPoolWeb.war/WEB-INF/lib

(请记住上述存放路径)

2、配置WAS变量
点击树状菜单,选择“环境”—“管理WebSphere变量”—“新建”,输入以下值:

引用
名称:MYSQL_JDBC_DRIVER_PATH
值:/opt/WebSphere/AppServer/installedApps/web/TestConnPoolEAR.ear/TestConnPoolWeb.war/WEB-INF/lib/
(上述连接类的全路径)
描述:自行填写吧。

点击在新窗口中浏览此图片

引用
名称:Mysql JDBC Driver
描述:Mysql JDBC Driver
类路径:${MYSQL_JDBC_DRIVER_PATH}/mysql-connector-java-3.1.14-bin.jar
(这个从上面定义的路径变量中引用)
实现类名:com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource
(请查询Mysql Connector/J的说明手册,输入JDBC 驱动程序实现的 Java 类名)

点击在新窗口中浏览此图片

引用
名称:MYSQL_JNDI
JNDI名:MYSQL_JNDI

点击在新窗口中浏览此图片※ 补充,JNDI 的含义:
JNDI(Java Naming and Directory Interface)是SUN公司提供的一种标准的Java命名系统接口,JNDI提供统一的客户端API,通过不同的访问提供者接口JNDI SPI的实现,由管理者将JNDI API映射为特定的命名服务和目录系统,使得Java应用程序可以和这些命名服务和目录服务之间进行交互。
详见:JNDI 在 J2EE 中的角色

5、定义定制属性
点击刚创建的“MYSQL_JNDI”数据源:
点击在新窗口中浏览此图片a)URL

引用
名称:URL
值:jdbc:mysql://localhost/petshop

点击在新窗口中浏览此图片b)user

引用
名称:user
值:root

(用于连接数据的用户名)
点击在新窗口中浏览此图片c)password

引用
名称:password
值:root

(对应上述用户名的密码)
点击在新窗口中浏览此图片d)driverType

引用
名称:driverType
值:org.gjt.mm.mysql.Driver

※ 注意:
该值来自 这里。
但在后面测试连接时,从日志中可知:

引用
在 DataSource 类 com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource 上不存在属性“driverType”

也就是说,3.1版本类库完全可以不用配置该值。
点击在新窗口中浏览此图片不要忘了保存主配置文件!!

四、创建测试数据库环境
在进行测试连接前,需要把测试数据库建好。这部分必须与上面的设定一致。
1、设置连接用户
以root用户为例,默认没有密码,用下面的命令把密码设置为“root”:

# mysqladmin -uroot -p password root

2、创建数据库
注意数据库名称一致:

# mysqladmin -uroot -proot create petshop

3、创建表及填入数据

引用
# mysql -uroot -proot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9 to server version: 4.1.22

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show databases;
+———-+
| Database |
+———-+
| mysql    |
| petshop  |
| test     |
+———-+
3 rows in set (0.00 sec)

mysql> use petshop
Database changed
mysql> create table TEST(C1 CHAR(10));
Query OK, 0 rows affected (0.00 sec)

mysql> insert into TEST values ('FromTest');
Query OK, 1 row affected (0.00 sec)

※ 注意:表的名称是有大小写区别的,这里的TEST表是大写的。

五、测试
1、测试连接
进入管理界面,从树状菜单选择:“资源”—“JDBC 提供程序”—“MYSQL JDBC Driver”。
在下方的界面中,从“其他属性”框选择“数据源”,选中“MYSQL_JNDI”,点击“测试连接”:
点击在新窗口中浏览此图片※ 关于警告信息
从日志文件:/opt/WebSphere/AppServer/logs/server1/SystemOut.log 可得知,警告如下:

引用
DataSource 配置:DSRA8020E: 警告:在 DataSource 类 com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource 上不存在属性“driverType”。

这在上面已经提到,可在“定制属性”中删除driverType变量。

2、访问测试页面
用于测试Mysql 连接的测试页面为:http://ip:9080/TestConnPoolWeb/mysql_pool.jsp
我的测试结果如下:
点击在新窗口中浏览此图片六、参考资料
[原创]WebSphere中流行数据库连接池的配置
Mysql Connector/J Documentation
JNDI 在 J2EE 中的角色
resin3.1 配置文件中的中文解析

在Windows 下安装 MySQL-python 1.2.5
搭建Master-Master Mysql Replication 集群
在红旗Asianux 3.0 上安装Moodle
Eclipse 3.6.2 JFace 对话框显示中文
用Tree代替TableTree制作表格型树

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/104545.html

(0)
上一篇 2021年8月25日 13:42
下一篇 2021年8月25日

相关推荐

发表回复

登录后才能评论