Nov 19

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

linuxing , 19:31 , 网络服务 » 商业软件 , 评论(0) , 引用(0) , 阅读(11003) , Via 本站原创 | |
    实施WebSphere Application Server(简称WAS)时,最常见的是安装应用程序和配置数据库连接池两个问题。经参考网上的资料,这里,我尝试利用一个简单的测试案例来对其进行描述。

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

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

二、安装应用程序
在成功安装WAS 5.1后,访问http://ip:9090/admin,输入标识名称(仅用于标识,与安全性无关):
点击在新窗口中浏览此图片
1、安装
点击左边的树状菜单,然后选择“应用程序”—“安装新的企业应用”,从右边的框架中选择应用程序(.ear包):
点击在新窗口中浏览此图片
(可把.ear包放在本地,或先上传到服务器上)
点击“下一步”,其他保持默认即可:
点击在新窗口中浏览此图片
点击在新窗口中浏览此图片
点击在新窗口中浏览此图片
点击在新窗口中浏览此图片
点击在新窗口中浏览此图片
然后,点击“完成”:
点击在新窗口中浏览此图片
最后,不要忘了选择“保存到主配置”。
(这点很重要,只有保存主配置后,应用才会真正拷贝到安装目录下)
点击在新窗口中浏览此图片

2、启动应用
从菜单中选择“应用程序”—“企业应用程序”,在右边的框架“名称”列中,选中应用“TestConnPoolEAR”,点击上面的工具栏“启动”:
点击在新窗口中浏览此图片
至此,应用程序安装完成。

三、配置数据库连接池
因测试机上没有安装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/
(上述连接类的全路径)
描述:自行填写吧。

点击在新窗口中浏览此图片
结果如下:
点击在新窗口中浏览此图片

3、创建JDBC提供程序
从树状菜单中选择“资源”—“JDBC提供程序”—“新建”,在JDBC提供程序选项中,选择“User-defined JDBC Provider”:
点击在新窗口中浏览此图片
然后填写以下信息:
引用
名称: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 类名)

点击在新窗口中浏览此图片
最后,点击“应用”,“确认”,回到上一个菜单。

4、定义数据源
从“JDBC 提供程序”界面中,点击刚创建的“Mysql JDBC Driver”:
点击在新窗口中浏览此图片
进入后,从界面下方的“其他属性”部分,点击“数据源”:
点击在新窗口中浏览此图片
进入后,点击“新建”,创建新的数据源,输入以下信息:
引用
名称: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版本类库完全可以不用配置该值。
点击在新窗口中浏览此图片

最后全部设定如下:
点击在新窗口中浏览此图片

6、保存主配置文件
不要忘了保存主配置文件!!

四、创建测试数据库环境
在进行测试连接前,需要把测试数据库建好。这部分必须与上面的设定一致。
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
我的测试结果如下:
点击在新窗口中浏览此图片
证明访问数据库成功。

至此,WAS 连接Mysq l数据库的数据库池配置完成。

六、参考资料
[原创]WebSphere中流行数据库连接池的配置
Mysql Connector/J Documentation
JNDI 在 J2EE 中的角色
resin3.1 配置文件中的中文解析
Tags: , ,
发表评论
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   游客无需密码
网址   电邮   [注册]