简体   繁体   English

间歇性错误命名管道提供程序:无法打开与SQL Server的连接[53]

[英]Intermitant error Named Pipes Provider: Could not open a connection to SQL Server[53]

I've searched through the Internet with respect to this error and I've not found anyone who is having this problem on an intermittent basis. 我已经通过Internet搜索了此错误,但没有发现任何人间歇性地遇到此问题。 It seems my application will run for an extended period of time with no problem, then all of a sudden it stops working and I get this error. 看来我的应用程序可以正常运行很长时间,然后突然停止工作,我得到了这个错误。 Then after some time(I have no idea how long this is) the application will start working again. 然后过了一段时间(我不知道这要花多长时间),应用程序将再次开始工作。 But lately to correct the problem I just restart the IIS server. 但是最近要解决此问题,我只是重新启动了IIS服务器。 Could there be a problem with the application pool? 应用程序池可能有问题吗? There are no errors in any of my event logs. 我的任何事件日志中都没有错误。

My server configurations are as follows Windows 2008 64-bit running PHP 5.4. 我的服务器配置如下,运行PHP 5.4的Windows 2008 64位。 I'm connecting to a SQL Server 2005 on Windows 2003. 我正在连接Windows 2003上的SQL Server 2005。

Here is my error. 这是我的错误。 Thanks for any help 谢谢你的帮助

Connection could not be established. 无法建立连接。 Array ( [0] => Array ( [0] => 08001 [SQLSTATE] => 08001 [1] => 53 [code] => 53 [2] => [Microsoft][SQL Server Native Client 11.0]Named Pipes Provider: Could not open a connection to SQL Server [53]. [message] => [Microsoft][SQL Server Native Client 11.0]Named Pipes Provider: Could not open a connection to SQL Server [53]. ) [1] => Array ( [0] => HYT00 [SQLSTATE] => HYT00 [1] => 0 [code] => 0 [2] => [Microsoft][SQL Server Native Client 11.0]Login timeout expired [message] => [Microsoft][SQL Server Native Client 11.0]Login timeout expired ) [2] => Array ( [0] => 08001 [SQLSTATE] => 08001 [1] => 53 [code] => 53 [2] => [Microsoft][SQL Server Native Client 11.0]A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online. [message] => [Microsoft][SQL Server Native Clie 数组([0] =>数组([0] => 08001 [SQLSTATE] => 08001 [1] => 53 [代码] => 53 [2] => [Microsoft] [SQL Server Native Client 11.0]命名管道提供程序:无法打开与SQL Server [53]的连接。[消息] => [Microsoft] [SQL Server Native Client 11.0]命名管道提供程序:无法打开与SQL Server [53]的连接。 >数组([0] => HYT00 [SQLSTATE] => HYT00 [1] => 0 [代码] => 0 [2] => [Microsoft] [SQL Server Native Client 11.0]登录超时已过期[消息] => [Microsoft] [SQL Server Native Client 11.0]登录超时已过期)[2] =>数组([0] => 08001 [SQLSTATE] => 08001 [1] => 53 [代码] => 53 [2] => [Microsoft] [SQL Server Native Client 11.0]建立与SQL Server的连接时发生与网络有关或特定于实例的错误。找不到或无法访问服务器。检查实例名称是否正确以及SQL Server是否配置为允许远程连接。有关更多信息,请参见SQL Server联机丛书。[message] => [Microsoft] [SQL Server Native Clie nt 11.0]A network-related or instance-specific error has occurred while establishing a connection to SQL Server. nt 11.0]建立与SQL Server的连接时,发生了与网络相关或特定于实例的错误。 Server is not found or not accessible. 找不到服务器或无法访问服务器。 Check if instance name is correct and if SQL Server is configured to allow remote connections. 检查实例名称是否正确以及SQL Server是否配置为允许远程连接。 For more information see SQL Server Books Online. 有关更多信息,请参见SQL Server联机丛书。 ) ) ))

Is it possible that your Server's IP address lease expires, get's renewed but the DNS record does not get refreshed? 您服务器的IP地址租约是否有可能过期,可以续订,但DNS记录不刷新? It sounds like your server does allow remote connections but for whatever reason, it looks like it is not being found. 听起来您的服务器确实允许远程连接,但是无论出于何种原因,似乎都找不到它。

I think I solved my problem. 我想我解决了我的问题。 I changed my new Web server to only use my internal DNS. 我将新的Web服务器更改为仅使用内部DNS。 I also entered values into my WINS settings for the web server. 我还在Web服务器的WINS设置中输入了值。 The error has not occurred since. 此后未发生该错误。 I hope this helps anybody else who is having the same problem. 我希望这对遇到相同问题的其他人有所帮助。

I have faced this problem many times and found that this happens because of improper DNS configuration at server level. 我已经多次遇到此问题,并且发现这是由于服务器级别的DNS配置不正确所致。 Hence, namedpipe fails. 因此,命名管道失败。 The solution i discovered is to create odbc (@ client) using tcp/ip address instead of domain name of sqlserver. 我发现的解决方案是使用tcp / ip地址而不是sqlserver的域名创建odbc(@客户端)。

Named database (default catalog) does not exist on the specified server (host). 指定的服务器(主机)上不存在命名数据库(默认目录)。 I get this error on attempt to connect to a linux environment that has no SqlServer at all. 尝试连接到根本没有SqlServer的linux环境时出现此错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 将 PDO 连接到 MS SQL Server 2008 R2 命名管道提供程序:无法打开到 SQL Server 的连接 [53] - Connecting PDO to MS SQL Server 2008 R2 Named Pipes Provider: Could not open a connection to SQL Server [53] 连接错误SQL Server - Connection error SQL Server SQLSTATE[08001]:[Microsoft][ODBC Driver 13 for SQL Server]TCP Provider:无法建立连接,因为目标机器主动拒绝它 - SQLSTATE[08001]: [Microsoft][ODBC Driver 13 for SQL Server]TCP Provider: No connection could be made because the target machine actively refused it 无法与 SQL Server 2019 建立连接 - Connection Could Not be Established with SQL Server 2019 连接到SQL Server for PHP:无法建立连接 - Connect to SQL Server for PHP: Connection could not be established Laravel 和 MS SQL Server 数据库连接抛出错误“(3/3) QueryException 找不到驱动程序” - Laravel and MS SQL Server Database connection is throwing the error "(3/3) QueryException could not find driver" 尝试使用 PHP 连接到远程 SQL Server。 错误“无法建立连接” - Trying to connect with PHP to remote SQL Server. Error "No connection could be made" TCP 提供程序连接被拒绝 - Laravel 6 和 SQL 服务器 (Microsoft) 和 Laragon - TCP Provider connection refused - Laravel 6 and SQL Server (Microsoft) and Laragon 在PHP中打开新的SQL Server连接 - Open new SQL Server connection in PHP 将yii2应用程序与sql server连接时出现“找不到驱动程序”错误 - “could not find driver” error while connection yii2 application with sql server
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM