防火墙
还有你的SQL Server是否打过补丁包了

解决方案 »

  1.   

    如果时websphere好像一定要重启服务的
      

  2.   

    以weblogic为例,其他服务器相似:
    进入某个连接池配置页,进入“连接“页,点击高级选项的”show“显示高级选项,把测试保留的连接、测试创建的连接、测试释放的连接3项前面的复选框全部选中。测试保留的连接   指定 WebLogic Server 是否在将连接提供给客户端之前测试该连接。(必须在下面指定测试表名称。)   测试创建的连接 
      指定 WebLogic Server 是否在创建连接后且将该连接添加到缓冲池中可用连接列表之前对该连接进行测试。(必须指定测试表名称。)   测试释放的连接 
      指定 WebLogic Server 是否在将连接返回到该 JDBC 连接缓冲池之前测试该连接。(必须指定测试表名称。)  连接保留超时: 设为 30 秒 
      在保留缓冲池连接的调用超时之前的秒数(-1 - 32 位正整数)。如果设置为 -1,则调用永远不会超时。   重试创建连接的频率: 设为 30 秒 
      尝试建立与数据库的连接的间隔秒数(0 - 32 位正整数)。适用于在数据库不可用的情况下服务器启动时创建的连接缓冲池。   测试频率:  60 秒 
      自动数据库连接测试之间的秒数(0 - 32 位正整数)。测试失败的连接将被关闭,然后重新打开以重新建立有效的物理数据库连接。(必须在下面指定测试表名称。)  测试表名称:   oracle的连接池默认为 SQL SELECT 1 FROM DUAL,sybase数据库可以填入一个记录不多的配置表名例如sys_code。
      测试物理数据库连接时要使用的数据库表的名称。指定 "测试频率" 并启用 "测试保留的连接"、"测试创建的连接" 和 "测试释放的连接" 时,此字段是必需的。 【测试方法】启动weblogic服务并且发布应用程序后,通过程序进行连接数据库操作成功,然后将数据库关闭,重新启动数据库服务,再执行连接数据库操作,应该还能成功(或等规定的秒数之后再试)。【注意】设置Connection Pool的高级选项中启用test reserved属性,会影响性能,所以上面各项时间值要酌情设置,设置太小会降低性能,设置太大会使恢复时间过长。
      

  3.   

    1。sqlserver没有打补丁
    2。程序打开连接没有释放回连接池