精华内容
下载资源
问答
  • "一般性网络错误" 的另类解释 Revision History:VersionDateCreatorDescription1.0.0.12003-11-15郑昀草稿Implementation Scope:本文档将说明出现一种不容易想到原因的访问数据库时发生一般性网络错误”,错误...
     marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog01.html" frameborder="0" width="728" scrolling="no" height="90">

     

    连接数据库时发生

     

    "一般性网络错误"

     

    的另类解释

     <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

    Revision History:

    Version

    Date

    Creator

    Description

    1.0.0.1

    2003-11-15

    郑昀

    草稿

    Implementation Scope

    本文档将说明出现一种不容易想到原因的访问数据库时发生“一般性网络错误”,错误报告的来源是ADODB,错误号是“-2147467259,或者0x80004005

     

    继续阅读之前,我们假设您熟悉以下知识:

    n         Microsoft SQL Server 2000

    n         Microsoft ADO

    关键词:

    SQL ServerADODBMSSOCN0x80004005

     

    现象

    一天,突然有这么一个问题摆在面前:

    用户浏览工作流系统时,突然跑出来这么一个错误:

    Microsoft VBScript 编译器错误 错误 '800a03f6'

     

    缺少 'End'

     

    /iisHelp/common/500-100.asp242

     

    Microsoft OLE DB Provider for SQL Server 错误 '80004005'

     

    [DBMSSOCN]一般性网络错误。请检查网络文档。

     

    /xxx/yyyframe.asp23

     

    经过排查,确定真正的原因在于调用ADO连接SQL Server 2000时,发生异常,错误描述就是“[DBMSSOCN]一般性网络错误。请检查网络文档。”,至于那个“Microsoft OLE DB Provider for SQL Server 错误 '80004005'”其实并没有太多意义。

     

    为什么会突然出现“[DBMSSOCN]一般性网络错误。”呢?

    服务器页面调用的是封装好的COM+ STA 组件,连接SQL Server 2000的其实是这个组件。

    后来又提供一个比较重要的信息,当这些事情发生的时候,注意到COM+应用的进程占用了200MB的内存。

    初步的猜想

    以前曾经在其他地方遇到过这种错误。

    但是,那是因为网卡或者网线闪断(“network is down”),造成连接数据库失败,服务又不停地试着去连接。不知道在什么情况下,服务不断报告:

    错误环境说明:运行SQL命令从数据库读取记录时发生COM异常;

    错误说明:[dbmssocn]一般性网络错误。请检查网络文档。

    错误号:-2147467259

    [dbmssocn]”指的是,当前用TCP/IP协议与数据库通信。

     

    但是,这次环境的网络质量没有问题。

    模拟试验

    专家指出可能是因为同一台服务器和SQL Server之间的连接都没有Close,所以导致连接达到被允许的最大数目,从而被全部关闭

    于是我们试验,看看一台服务器被允许与SQL Server建立最多多少个连接。

    更多信息

    测试程序中重用了原工程中InitADOCmd (_Command** ppiCmd)方法。

    这个方法利用ADO.Command::put_ActiveConnection方法来建立数据库连接的:

    varConn = _bstr_t("Provider=SQLOLEDB.1;……”);

    hr = t_piCmd->put_ActiveConnection(varConn);

     

    Windows XP环境中,循环调用这个函数到了1980次,程序就出现几秒钟的停顿。之后,就得到0x80004005的错误返回值。这个值是由put_ActiveConnection方法返回的,并不是异常。所以看不到ADO异常描述。

    我们通过测试程序停滞时,立刻用一个VBS脚本再次请求建立数据库连接。于是,VBS脚本一起停滞,隔了几秒钟后,抛出异常,错误描述为:

    "[DBNETLIB][ConnectionOpen (PreLoginHandshake()).]一般性网络错误。请检查网络文档。"

     

    之后的19811982...put_ActiveConnectio调用,都会是同一个错误返回值。

     

    SQL Server事件探查器中,看到1980次调用之前,都只有Audit Login事件。除非关闭测试程序,才会唰地一下所有的Audit Logout事件出来了。

     

    有时候,当第1981次建立连接的请求被SQL Server 2000认为超出允许范围时,SQL Server 2000主动将这一千多个的连接同时全部中断。于是乎,在SQL Server事件探查器中,你也可以看到唰地一下所有的Audit Logout事件出来了。

     

    如果测试程序维持着这些数据库连接的话,内存会持续增长,如下所示:

     

    WinXP(Win2000上允许连接的数目少)

     

    情况1

    单纯反复执行ADO.Command::put_ActiveConnection,则只有“Audit Login”事件,没有Logout事件。这种请求最多达到1980之后,就会出现一般性网络错误

     

    情况2

    如果是反复执行

    ADO.Command::put_ActiveConnection方法,然后又执行了查询,返回记录集,则这种循环最多达到483之后,就会出现一般性网络错误

     

    在实际测试中,第1种情况,最开始Demo用了6MB内存,最后累积的内存是:104MB

     2种情况下,最开始Demo用了6MB内存,最后累积的内存是:39.5MB

     

     

     

     

     

     

     

    你可以通过下面的SQL语句察看当前与SQL Server保持的连接都来自于哪里,有多少个:

    SELECT dbid,DB_NAME(dbid) as DBName,hostname,status,last_batch

    FROM sysprocesses

    WHERE  DB_NAME(dbid)='%YourDatabaseName%' AND (last_batch > 'YY-MM-DD MM:SS:00')

    ORDER BY last_batch DESC

     

    总结:

    虽然这种情况出现的比较罕见,但是如果排除了网络质量原因,你也许可以注意一下当前服务器与SQL Serverconnection数目是否维持在一个正在高涨的数量

    当连接不断增加的时候,就要当心,服务器连接数据库是有一定限制的,而且达到最大值后,其他程序再次请求连接时,就可能得到“一般性网络错误”的警告,而且错误号80004005也并没有说明到底发生了什么,SQL Server和ADO并不会告诉你连接数已经达到最大值。

     

    Disclaimers

    本文档所包含的信息代表了在发布之日,zhengyun对所讨论问题的当前看法。本文档不应理解为zhengyun一方的承诺,zhengyun不保证所给信息在发布之日以后的准确性。

    本文档仅供参考。

    用户必须遵守所有适用的版权法。在不对版权法所规定的权利加以限制的情况下,如未得到 zhengyunCSDN.Net明确的书面许可,不得出于任何目的、以任何形式或手段(电子的、机械的、影印、录制等等)复制、传播本文的任何部分,也不得将其存储或引入到检索系统中。

     

    thank tian&wu

    Writen by zhengyun_ustc(at)hotmail.com

     

     

    <script language=javascript>postamble();</script><script language=javascript>postamble();</script><script language=javascript>postamble();</script>

    Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=12736


    展开全文
  • 网络舆情事件的频繁发生,使得越来越多的企事业单位开始重视网络舆情管理工作,尤其是舆情的预防以及舆情发生后的应急管理工作应该如何开展,成为了一门必修课。因此这就涉及到了网络舆情应急管理和舆情演练的问题:...

    2b4b9d0dfd7e386326ed5ec439ab3ce8.png

    网络舆情事件的频繁发生,使得越来越多的企事业单位开始重视网络舆情管理工作,尤其是舆情的预防以及舆情发生后的应急管理工作应该如何开展,成为了一门必修课。因此这就涉及到了网络舆情应急管理和舆情演练的问题:

    网络舆情应急管理

    1.尽早地发现舆情:面对互联网海量的舆情信息数据以及众多的舆情传播平台,要想尽早地发现舆情不是一件容易的事。为此,建议可采用像识微商情监测系统这样的网络舆情监测平台,对全网舆情进行7*24小时的实时监测,以第一时间掌握网上与己相关的舆论舆情信息。

    2.舆情上报:一旦发现舆情后,相关的舆情工作人员或舆情工作部门应该极早地向上级领导汇报,比便于整合资源快速采取舆情应对措施。在这个过程中也可以借助网络舆情监测平台-识微商情的舆情预警功能,当识别出重点舆情信息后第一时间通过微信、短信、邮件和客户端的方式自动告警,提高舆情上报的时效性。

    3.舆情回复引导:对于一般性的网络舆情,12小时内官方回复;重大网络舆情,应该在24小时内官方回复。如遇特殊情况,无法在最佳时间内回复,应于3日内作出表态性回复。此外,对于紧急舆情于3小时内回应社会关切。

    4.舆情跟踪反馈:为了防止舆情蔓延,还需要借助网络舆情平台不断跟进舆情发展态势,及时地将舆情处置最新情况反馈给上级领导。

    网络舆情演练

    1.演练活动准备(演练活动策划;准备好演练台本;演练支撑辅助系统;确定演练小组名单和分工;确定保障小组名单和分工;演练小组培训;演练现场布置;现场预演彩排;人员邀请与接待)

    2.演练现场执行(活动流程;主持人讲话注意事项;保障小组动员;风险控制)

    3.需要用到的相关文档(演练台本;官方通告/发布文稿;舆情报告;关于协助发布xxx新闻通稿的商请函;关于协助发布xxx警方通告的商请函;关于协助处置xxx相关有害信息的请示函的商请函)

    点击查看原文获取网络舆情监测平台免费申请试用入口>>>

    点击下方小卡片填写表单,即可免费领取舆情报告,免费试用舆情系统

    4f446bc891b55f932cd65af2d5720954.png
    展开全文
  • “GDI+中发生一般性错误” 该问题解决方案,右键网站项目文件 给Everyone用户授予写入权限即搞定 简单吧。。。。。。。 转载于:https://www.cnblogs.com/pato/archive/2010/07/31/1789602.html...

    新开发一个网络报表系统,用到了免费的ChartLet图形统计控件,发布网站后访问报错

    “GDI+中发生一般性错误”

    该问题解决方案,右键网站项目文件
    给Everyone用户授予写入权限即搞定
    简单吧。。。。。。。
     
     

    转载于:https://www.cnblogs.com/pato/archive/2010/07/31/1789602.html

    展开全文
  • 一般性网络错误 "   的 另类解释   RevisionHistory: Version Date Creator Description 1.0.0.1 2003-11-15 郑昀 草稿 ImplementationScope: 本文档将说明出现一种不容易想到原因的访问数据库时发生一般性...
    
    <script type="text/javascript"
    src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
    </script>
    <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

     

    连接数据库时发生

     

    "一般性网络错误"

     

    另类解释

     
    RevisionHistory:
    Version

    Date

    Creator

    Description

    1.0.0.1

    2003-11-15

    郑昀

    草稿
    ImplementationScope:
    本文档将说明出现一种不容易想到原因的访问数据库时发生“一般性网络错误”,错误报告的来源是ADODB,错误号是“-2147467259,或者0x80004005”。

     

    继续阅读之前,我们假设您熟悉以下知识:

    n        Microsoft2000

    n        MicrosoftADO
    关键词:
    SQLServer、ADO、DBMSSOCN、0x80004005

     
    现象
    一天,突然有这么一个问题摆在面前:

    用户浏览工作流系统时,突然跑出来这么一个错误:

    MicrosoftVBScript编译器错误错误'800a03f6'

     

    缺少'End'

     

    /iisHelp/common/500-100.asp,行242

     

    MicrosoftOLEDBProviderforSQLServer错误'80004005'

     

    [DBMSSOCN]一般性网络错误。请检查网络文档。

     

    /xxx/yyyframe.asp,行23

     

    经过排查,确定真正的原因在于调用ADO连接SQLServer2000时,发生异常,错误描述就是“[DBMSSOCN]一般性网络错误。请检查网络文档。”,至于那个“MicrosoftOLEDBProviderforSQLServer错误'80004005'”其实并没有太多意义。

     

    为什么会突然出现“[DBMSSOCN]一般性网络错误。”呢?

    服务器页面调用的是封装好的COM+STA组件,连接SQLServer2000的其实是这个组件。

    后来又提供一个比较重要的信息,当这些事情发生的时候,注意到COM+应用的进程占用了200MB的内存。
    初步的猜想
    以前曾经在其他地方遇到过这种错误。

    但是,那是因为网卡或者网线闪断(“networkisdown”),造成连接数据库失败,服务又不停地试着去连接。不知道在什么情况下,服务不断报告:

    错误环境说明:运行SQL命令从数据库读取记录时发生COM异常;

    错误说明:[dbmssocn]一般性网络错误。请检查网络文档。

    错误号:-2147467259

    “[dbmssocn]”指的是,当前用TCP/IP与数据库通信。

     

    但是,这次环境的网络质量没有问题。
    模拟试验
    专家指出可能是因为同一台服务器和SQLServer之间的连接都没有Close,所以导致连接达到被允许的最大数目,从而被全部关闭。

    于是我们试验,看看一台服务器被允许与SQLServer建立最多多少个连接。
    更多信息
    测试程序中重用了原工程中InitADOCmd(_Command**ppiCmd)方法。

    这个方法利用ADO.Command::put_ActiveConnection方法来建立数据库连接的:

    varConn=_bstr_t("Provider=SQLOLEDB.1;……”);

    hr=t_piCmd->put_ActiveConnection(varConn);

     

    在环境中,循环调用这个函数到了1980次,程序就出现几秒钟的停顿。之后,就得到0x80004005的错误返回值。这个值是由put_ActiveConnection方法返回的,并不是异常。所以看不到ADO异常描述。

    我们通过测试程序停滞时,立刻用一个VBS脚本再次请求建立数据库连接。于是,VBS脚本一起停滞,隔了几秒钟后,抛出异常,错误描述为:

    "[DBNETLIB][ConnectionOpen(PreLoginHandshake()).]一般性网络错误。请检查网络文档。"

     

    之后的1981、1982、...次put_ActiveConnectio调用,都会是同一个错误返回值。

     

    在SQLServer事件探查器中,看到1980次调用之前,都只有AuditLogin事件。除非关闭测试程序,才会唰地一下所有的AuditLogout事件出来了。

     

    有时候,当第1981次建立连接的请求被SQLServer2000认为超出允许范围时,SQLServer2000会主动将这一千多个的连接同时全部中断。于是乎,在SQLServer事件探查器中,你也可以看到唰地一下所有的AuditLogout事件出来了。

     

    如果测试程序维持着这些数据库连接的话,内存会持续增长,如下所示:1 <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
    <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
    展开全文
  • 最近几年来,无线在国内得到了很大的发展,...针对一般性无线网络,本文特整合了无线网络故障排 查的一些常见问题和解决方法供大家参考。 1、硬件排错 当只有一个接入点以及一个无线客户端出现连接问题时,...
  • 第一个错误"SQL Server 不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。一般说来,有以下几种可能: 1、SQL Server名称或IP地址拼写有误; 2、服务器端网络配置有误; 3、...
  • 第一个错误"SQL Server 不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。一般说来,有以下几种可能: 1、SQL Server名称或IP地址拼写有误; 2、服务器端网络配置有误; 3、...
  • 错误检测

    2019-12-02 19:36:17
    对于可靠传输来说,必须进行错误检测和纠正。 在OSI模型中,错误检测和纠正机制要么在数据链路层实现,要么在传输层实现。 在数据传输中,一般会产生三种类型的错误: 单比特错误:在数据单元中只有一个比特发生...
  •  通过NAS与磁盘阵列柜的配合,能有效的减少数据的丢失/错误,并能在事故发生时快速有效地恢复数据。 二 制造行业网络存储需求分析 在国外,NAS设备已成为网络数据存储的首选设备,并且以年66.5%的速度递增。NAS产品...
  • [DBNETLIB][ConnectionOpen(PreLoginHandshake())).]一般性网络错误。请检查网络文档。如下图:  找了很多网上的文章,没有解决。  后来发现了篇文章 http://bbs.gimoo.net/thread/53306-1.
  • *引用*/ SQL Server 2000连接中的四个最常见错误: 一."SQL Server 不存在或访问被拒绝" 这个是最复杂的,错误发生的原因比较多,需要检查的方面...要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误...
  • SQL Server 连接错误

    2011-06-15 20:48:00
    一般说来,有以下几种可能: 1,SQL Server名称或IP地址拼写有误 2,服务器端网络配置有误 3,客户端网络配置有误 要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因. ===========
  • 一般说来,有以下几种可能: 1、SQL Server名称或IP地址拼写有误 2、服务器端网络配置有误 3、客户端网络配置有误 要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。 首先,检查网络物理...
  • 第一个错误”SQL Server 不存在或访问被拒绝”通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多 。一般说来,有以下几种可能: 1、SQL Server名称或IP地址拼写有误; 2、服务器端网络配置有误; 3、...
  • SQL Server常见连接错误

    2006-04-26 11:01:00
    SQL Server连接中的常见... 一般说来,有以下几种可能: 1,SQL Server名称或IP地址拼写有误 2,服务器端网络配置有误 3,客户端网络配置有误 要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因.
  •  这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多.  一般说来,有以下几种可能:  1,SQL Server名称或IP地址拼写有误  2,服务器端网络配置有误  3,客户端网络配置有误  要解决这个问题...
  • 这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多. 一般说来,有以下几种可能: 1,SQL Server名称或IP地址拼写有误 2,服务器端网络配置有误 3,客户端网络配置有误 要解决这个问题,我们一般要遵循以下...
  •  分析:此问题最为复杂,由于错误发生的原因比较多,所以需要检查很多方面。  一般情况下,有几种可能:  1.SQL Server名称或IP地址拼写有误。  2.服务器端网络配置有误。  3.客户端网络
  • 一般说来,有以下几种可能:1,SQL Server名称或IP地址拼写有误2,服务器端网络配置有误3,客户端网络配置有误要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因.============= 首先,检查网络物理...
  • 这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多. 一般说来,有以下几种可能: 1.SQL Server名称或IP地址拼写有误 2.服务器端网络配置有误 3.客户端网络配置有误 要解决这个问题,我们一般要遵循...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 451
精华内容 180
关键字:

发生一般性网络错误