您当前的位置: 首页 > 数据库教程 > MySQL教程 > SQL数据库超时过期问题的解决方案

SQL数据库超时过期问题的解决方案

作者:不详 来源:网络 发布时间: 2014-07-20 21:28 点击:
如果SQL的数据库越来越多,有时候会遇到读取超时,死锁等一大堆问题,按经验来说,数据结构设计不合理,经常使用视图等原因都有,那些怎么解决呢?下面看文章 1.由于数据库设计问题造成SQL数据库新增数据时超时 症状: Microsoft OLE DB Provider for SQL Server 错误 '8

SQL数据库超时过期问题的解决方案

  如果SQL的数据库越来越多,有时候会遇到读取超时,死锁等一大堆问题,按经验来说,数据结构设计不合理,经常使用视图等原因都有,那些怎么解决呢?下面看文章

  1.由于数据库设计问题造成SQL数据库新增数据时超时

  症状:

  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自己维护的(在你没有修改querywait配置前),只有当你的实际查询时间超过估计查询时间的25倍时,才会超时。

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

  一是估计时间不准确;

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

  解决办法:

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

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

  C.增加内存

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

  sp_configure'showadvancedoptions',1

  GO

  RECONFIGURE

  GO

  sp_configure'querywait',2147483647

  GO

  RECONFIGURE

  GO

  4.应用程序连接失败

  故障:

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

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

  解决方法:

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

  

分享到:
本文"SQL数据库超时过期问题的解决方案"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4