配置Tomcat上的SQL Server连接池(Configure SQL Server conne

2019-07-21 23:41发布

我一直在试图配置一个SQL Server 2012数据库的连接池。 我现在有配置的Informix和Oracle池和工作,只有SQL服务器让我头疼。 这是我的context.xml的资源如何到目前为止的样子:

<Resource name="jdbc/sqlserv"
    auth="Container"
    factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
    driverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver"
    type="javax.sql.DataSource"
    maxActive="50"
    maxIdle="10"
    maxWait="15000"
    username="username"
    password="password"
    url="jdbc:sqlserver://127.0.0.1:1433;databaseName=SQLDB;"
    removeAbandoned="true"
    removeAbandonedTimeout="30"
    logAbandoned="true" /> 

这当然是使用sqljdbc4司机。 我们已经尝试过使用JTDS-1.3.0与driverClass="net.sourceforge.jtds.jdbc.Driver" ,但没有去。 所有资源裁判也被正确配置。 每当我试图创建使用资源的新的连接,它失败。
为了比较的缘故,这里是我们的Informix和Oracle资源什么样子:

<Resource name="jdbc/infmx"
    auth="Container"
    type="javax.sql.DataSource"
    factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
    maxActive="50"
    maxIdle="10"
    maxWait="15000"
    username="username"
    password="password"
    driverClassName="com.informix.jdbc.IfxDriver"
    url="jdbc:informix-sqli://localhost:30091/infmx:informixserver=ol_infmx_soc"
    removeAbandoned="true"
    removeAbandonedTimeout="30"
    logAbandoned="true"/>

<Resource name="jdbc/orcl"
    auth="Container"
    type="oracle.jdbc.pool.OracleDataSource"
    driverClassName="oracle.jdbc.driver.OracleDriver"
    factory="oracle.jdbc.pool.OracleDataSourceFactory"
    url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
    user="username"
    password="password"
    maxActive="50"
    maxIdle="10"
    maxWait="15000" /> 

所以我的问题是:我该如何正确对我的Tomcat相关配置SQL Server 2012的一个连接池? 我已经搜查高和低,企图一切,我已经找到了,但是毫无效果。


提前致谢。

[编辑]这是堆栈跟踪: http://pastebin.com/w3rZSERs

[编辑2]看来问题是,Tomcat的找不到他的lib文件夹中的驱动程序。 我们可以肯定它的存在,但我们不知道是肯定。 这种情况既sqljdbc4和JTDS-1.3.0。 我们下面每一个准则,我们可以发现,但问题仍然存在。

Answer 1:

我们发现我们的问题。

driverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver"

本来应该

driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"


Answer 2:

这在我看来,Java端的配置是否正确。

您可以访问使用另一个JDBC连接(例如SquirrelSQL或类似软件)服务器?

如果您无法访问使用松鼠的服务器,也许你没有启用到服务器的TCP / IP连接,在这种情况下,遵循公认的答案SQL Server Express的2012启用远程连接



文章来源: Configure SQL Server connection pool on Tomcat