当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server 2000 SP4与数据链接池问题

MSSQL
精通数据库系列之入门:基础篇1
剖析SQL Server 2005查询通知之基础篇
用sp_lock诊断SQL Sever的性能问题
测试SQL Server业务规则链接方法
解析SQL Server数据应用在不同的数据库中
如何使用SQL Server数据库中查询累计值
逐行扫描 为你讲解几个基本SQLPLUS命令
教你一招:MSSQL数据库索引的应用
确定几个SQL Server栏中的最大值
SQL Server 2005分析服务 统一整合视图
如何使用SQL Server嵌套子查询
用TableDiff产生SQL Server同步脚本
小型商业应用选SQL Server还是Access
用SQL Server Having计算列和平均值
SQL Server 2005基于消息的应用程序介绍
在SQL Server实例之间传输登录和密码
SQL Server 2005深层工具和运行时间集
SQL Server数据库增强版备份体验
使用SQL Server 2000日志转移实现高可用性
浅谈Linq To Sql集成数据库语言的优劣

MSSQL 中的 SQL Server 2000 SP4与数据链接池问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 93 ::
收藏到网摘: n/a

今天远程连接一台xp sp2上的SQL,报错信息如下:

以下为引用的内容:
  Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.
  Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
  Exception Details: System.InvalidOperationException: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.
  Source Error:
  Line 2503: cmd.CommandType = CommandType.StoredProcedure;
  Line 2504:
  Line 2505: connection.Open();
  Line 2506: SqlCommandBuilder.DeriveParameters(cmd);
  Line 2507: connection.Close();

但是,我的连接字符串中已经设置了,最大链接池=200,应该是不可能全部被占用的。

当把链接池设置去掉,就报:

以下为引用的内容:
  An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
  Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
  Exception Details: System.Data.SqlClient.SqlException: An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
  Source Error:
  Line 2503: cmd.CommandType = CommandType.StoredProcedure;
  Line 2504:
  Line 2505: connection.Open();
  Line 2506: SqlCommandBuilder.DeriveParameters(cmd);
  Line 2507: connection.Close();

这下子,问题就明朗了,典型的没有打 Sql2000 sp4 的问题,打上sp4问题解决,差点被误导。