用户名:  密码:  验证码: 验证码  注册  找回
RSS
无双网
 2018年05月27日 星期日  您现在位于: 首页 → 技术文栏 → [ODBC SQL Server Driver]超时已过期-...

[ODBC SQL Server Driver]超时已过期

2013年08月13日  无双网  出处:
Microsoft OLE DB Provider for SQL Server 错误 '80040e31' ([ODBC SQL Server Driver]超时已过期);

服务器上看CPU、内存占用率很低;

事件日志中提示: 数据库 '*********' 中文件 '***********' 的自动增长在 453 毫秒后已取消或出现超时。使用 ALTER DATABASE 设置更小的 FILEGROWTH 或设置新的大小。

原因:

数据库设置时,[文件增长]按百分比来增长,当数据库文件很大时(1G以上),新增操作都会报超时,而这时候其实CPU、内存占用率都非常非常的低。

解决方法:

把上述的文件增长这里设置为一个更低的百分比或者直接指定增加多少兆字节。

 

2.SQL Server数据库超时设置

 

修改客户端的连接超时设置。默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是 4 秒,而查询分析器是 15 秒。

 

企业管理器中的设置:

 

A、在企业管理器中,选择菜单上的"工具",再选择"选项"

B、在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡;

C、在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如 30。

 

查询分析器中的设置:

 

单击“工具”->"选项"->"连接"; 将登录超时设置为一个较大的数字,连接超时改为0。

 

3.查询语句时超时

 

 

原因分析:

 

查询超时一般来说首先要从sql语句和数据表的结构上找原因,优化sql语句和为数据库的查询字段建索引是最常用的办法。

另外,数据库的查询超时设置一般是sqlserver自己维护的(在你没有修改query wait配置前),只有当你的实际查询时间超过估计查询时间的25倍时,才会超时。

而造成超出估计值那么多的原因有两种可能:

一是估计时间不准确;

二是sql语句涉及到大量占用内存的查询(如排序和哈希操作),内存不够,需要排队等待资源造成的。

 

解决办法:

A.优化语句,创建/使用合适的索引;

B.解决第一个问题的方法,更新要查询表的索引分发统计,保证估计时间的正确性,UPDATE STATISTICS 表名;  

 

 

C.增加内存

 

如果想手动设置查询超时,可以使用以下语句:

 

sp_configure  'show  advanced  options',  1  
    GO  
    RECONFIGURE  
    GO  
    sp_configure  'query  wait',  2147483647  
    GO  
    RECONFIGURE  
    GO

 

 

4.应用程序连接失败

 

故障:

在应用程序中我们也会遇到类似的错误信息,例如:

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'. [Microsoft][ODBC SQL Server Driver]超时已过期.

 

解决方法:

A.如果遇到连接超时的错误,我们可以在程序中修改 Connection 对象的超时设置,再打开该连接。例如:

 

<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSNtest="DRIVER={SQL Server};SERVER=ServerName;UID=USER;
PWD=password;DATABASE=mydatabase"
Conn. Properties("Connect Timeout") = 15 '以秒为单位
Conn.open DSNtest
%>

 

 

B.  如果遇到查询超时的错误,我们可以在程序中修改 Recordset 对象的超时设置,再打开结果集。例如:
 (本文已被浏览 6239 次)
 发布人:asp126
 → 推荐给我的好友
上篇文章:评论:115网盘的何去何从
下篇文章:没有找到相关文章
发表评论
  → 评论内容 (点击查看)   共0条评论,每页显示5条评论   浏览所有评论
(没有相关评论)
  → 发表我的评论 (点击发表)
热门文章
 全部DLL下载
 手机解锁大全
 添加红月装备的详细教程 (包括装备 武...
 42个搜索引擎免费登陆入口大全 (国内...
 MSFlexGrid使用技巧一例
 保存webbrowser中的HTML内...
 用vb6的ActiveX控件实现异步下...
 PC经典RPG《仙剑奇侠传Ⅰ》for PP...
 用VB6.0设计简易赛车游戏
 能否判断动态数组有没有被分配过
最新文章
 [ODBC SQL Server Driv...
 评论:115网盘的何去何从
 我科学家实现百公里量级自由空间量子隐形...
 中国智能手机出货量占全球27%居世界之...
 Gartner:2012 第二季度西欧 P...
 [多图]华山论剑:当今在世的智商最高的...
 三星获出租车服务系统专利 可快速查看驾...
 [多图]15项可能延续到2030年的科...
 分析称苹果三星专利大战输赢已成定论
 Google终获云操作系统专利
 网站留言· 友情链接·与我在线·网站地图联系我们·管理·TOP 
 陕ICP备09004157号  
 Copyright © 2012 Asp126.com Inc. All Rights Reserved.Processed in 0.016s, 8 queries, 34 Cache,0 Online