怎么办?——处理数据库连接故障的方法 (数据库无法连接服务器失败请稍后再试)

在数据库管理的过程中,由于不可预见的因素,难免会遇到一些连接故障的问题,这些问题对于数据库的正常运行无疑会造成很大的影响。那么,该怎样去处理这些连接故障的问题呢?

一、故障诊断

我们需要进行故障诊断,找出传统的问题所在。在对数据库进行诊断时,我们需要考虑以下几个方面:

1、网络故障

无论是本地数据库还是远程数据库,都需要依赖于网络传输数据,若是网络传输出现了问题,则会导致连接故障。

2、数据库设置

如果服务器设置的高于默认值,则会造成数据库连接的故障。

3、数据库服务停了

如果服务器服务停了,则会导致数据库连接的故障。

二、针对性解决方案

针对连接故障的问题,我们需要针对性的解决方案。以下是处理连接故障的一些方案:

1、网络修复

如果是网络传输的原因,则我们需要从网络层面寻找修复方案。可以考虑重新启动网络服务、更换网络设备等操作,同时也可以利用网络诊断工具查找问题。

2、调整数据库设置

如果是由于数据库设置问题造成的故障,我们可以选择更换合适的数据库参数,使数据库的可靠性更高,并避免遇到这种问题。同时也可以进行数据库性能评测,查看其是否达到了更佳性能。

3、重启服务

如果数据库服务停了,我们需要及时重启数据库服务,重新建立连接。

三、事前预防

除了及时针对故障进行解决以外,还需要在平时的数据库管理中考虑一些事前预防的措施,避免故障的发生。

1、数据库备份

及时对数据库进行备份,以便在出现故障时,能够更好地进行恢复。

2、长期运行监控

我们可以通过监控软件或者人工巡检等方式,及时发现运行状况的不良情况,并采取相应的预防措施。

针对连接故障的问题,我们需要进行快速诊断,并采取相应的针对性解决方案,同时,在平时的数据库管理中也需要有事前预防的措施,以避免故障的出现。

相关问题拓展阅读:

sql server数据库连接失败

如果客户端计算机上的别名设置错误,可能会引起连接问题。您可以使用客户端网络实用程序查看别名。为此,请按以下步骤操作: 1. 启动客户端网络实用程序。如果 SQL Server 客户端工具被安装在正在运行客户端

应用程序

的计算机上,请按照以下步骤启动客户端网络实用程序: a. 单击“开始”,然后指向“程序”。 b. 指向“Microsoft SQL Server”,然后单击“客户端网络实用程序”。 如果 SQL Server 客户端工具没有激唯穗安装在客户端计算机上,请按照以下步骤启动客户端网络实用程序: a. 单击“开始”,然后单击“运行”。 b. 在“运行”对话框中,在“打开”框中键入 cliconfg,然后单击“确定”。 2. 在“SQL Server 客户端网络实用程序”窗口中,单击“常规”标签,然后启用您要使用的所有协议。注意:您必须至少启用 TCP/IP 协议和命名管道协议。 3. 单击“别名”标签,然后验证为 SQL Server 实例所配置的别名。 4. 验证别名的属性,确认服务器名或 IP 地址和协议的配置是正确的。 通过使明卜用服务器名、IP 地址或者其他协议,您可以创建一个新的别名以测试连接性能。注意:在 Microsoft 数据存取部件 (MDAC) 的早期版本中,客户端网络实用程序的

用户界面

是不同的。因此,如果您没有看到本文中列出的选项,请在运行客户端应用程序的计算机上安装 MDAC 的新版本。验证 SQL Server 实例正在正确地侦听要验证 SQL Server 实例正在正确地侦听命名管道、TCP/IP 或您在客户端应用程序中使用的其他协议,请打开当前的 SQL Server 错误日山姿志文件。SQL Server 错误日志文件可能包括与以下类似的条目::49:36.17 server SQL server listening on TCP, Shared Memory, Named Pipes.:49:36.17 server SQL server listening on 192.168.1.5:1433, 127.0.0.1:1433.通过分析 SQL Server 错误日志文件中的条目,可以验证 SQL Server 实例是否正在侦听正确的 IP 地址和端口。在默认情况下,一个默认的 SQL Server 实例侦听端口 1433。您还可以使用服务器网络实用程序来验证 SQL Server 的协议设置并更改 SQL Server 中的属性,包括可以连接到 SQL Server 和可以使用的端口的协议。关于使用服务器网络实用程序的更多信息,请参见 SQL Server 在线参考书中的“SQL Server 网络实用程序”专题。有时候,SQL Server 2023 可能不会绑定于端口 1433 或任何其他指定的端口。如果端口正被其他应用程序使用,或者如果您正在尝试使用一个错误的 IP 地址进行连接,就可能会出现此问题。因此,TCP/IP 到 SQL Server 的连接可能不成功,在 SQL Server 错误日志中您会收到下列错误信息::49:14.12 server SuperSocket Info:Bind failed on TCP port 1433.有关其他信息,请单击下面的文章编号,以查看 Microsoft

知识库

中相应的文章:(

) PRB:TCP\IP 端口正由另一应用程序使用 如果通过 TCP/IP 连接您不能连接到 SQL Server 实例,请尝试使用命名管道协议或

共享内存

协议。在

命令提示符

下运行下面的命令,以获取关于正在使用的端口的信息:

从这里我们可以看到客户端启用了哪些协议。一般而言,我们同样需要启用命名管道以及 TCP/IP 协议。  点击 TCP/IP 协议,选择”属性”,可以检查客户端默认连接端口的设置,如下图所示。该端口必须与服务器一致。  单击”别名”选项卡,还可以为服务器配置别名。服务器的别名是用来连接的名称,连接参数中的服务器是真正的服务器名称,两者可以相同或不同。如下图中,我们可以使用myserver来代替真正的服务器名称sql2kcn-02,并且使用网络库 Named Pipes。别名的设置与使用HOSTS文件有相似之处。通过以上几个方面的检查,错误 1 发生的原因基本上可以被排除。下面我们再详细描述如何来解决错误 2。  当用户尝试在查询分析器里面使用sa来连接SQL Server,或者在企业管理器里面使用sa来新建一个SQL Server注册时,经常会遇到如图 2 所示的错误信息。该错误产生的原因是由于SQL Server使用了”仅 Windows”的身份验证方式,因此用户无法使用SQL Server的登录帐户(如 sa )进行连接。解决方法如下所示:  1、 在服务器端使用企业管理器,并且选择”使用 Windows 身份验证”连接上 SQL Server;  2、 展开”SQL Server组”,鼠标右键点击SQL Server服务器的名称,选择”属性”,再选择”安全性”选项卡;  3、 在”身份验证”下,选择”SQL Server和 Windows “。  4、 重新启动SQL Server服务。  在以上解决方法中,如果在第 1 步中使用”使用 Windows 身份验证”连接 SQL Server 失败,那么我们将遇到一个两难的境地:首先,服务器只允许了 Windows 的身份验证;其次,即使使用了 Windows 身份验证仍然无法连接上服务器。这种情形被形象地称之为”自己把自己锁在了门外”,因为无论用何种方式,用户均无法使用进行连接。实际上,我们可以通过修改一个注册表键值来将身份验证方式改为 SQL Server 和 Windows 混合验证,步骤如下所示:  1、点击”开始”-“运行”,输入regedit,回车进入注册表编辑器;  2、依次展开注册表项,浏览到以下注册表键:  3、在屏幕右方找到名称”LoginMode”,双击编辑双字节值;  4、将原值从1改为2,点击”确定”;  5、关闭注册表编辑器;  6、重新启动SQL Server服务。  此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,但是仍然无法使用Windows身份验证模式来连接SQL Server。这是因为在 SQL Server 中有两个缺省的登录帐户:BUILTIN\Administrators 以及 <机器名>\Administrator 被删除。要恢复这两个帐户,可以使用以下的方法:  1、打开企业管理器,展开服务器组,然后展开服务器;  2、展开”安全性”,右击”登录”,然后单击”新建登录”;  3、在”名称”框中,输滚洞入 BUILTIN\Administrators;  4、在”服务器角色”选项卡中,选择”System Administrators” ;  5、点击”确定”退出;  6、使用同样方法添加 <机器名>\Administrator 登录。  以下注册表键HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode  的值决定了SQL Server将采取何种身份验证模式。该值为1,表示坦启使用Windows 身份验证模式;该值为2,表示使用混合模式(Windows 身份验证和 SQL Server 身份验证)。  看完如何解决前两个错误的方法之后,让我们来看一下如图 3 所示的第三个错误。  如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错。这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,并且是慢速连接时,有可能会让备如导致以上的超时错误。有些情况下,由于局域网的网络问题,也会导致这样的错误。  要解决这样的错误,可以修改客户端的连接超时设置。默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是 4 秒,而查询分析器是 15 秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因)。具体步骤为:  1、在企业管理器中,选择菜单上的”工具”,再选择”选项”;  2、在弹出的”SQL Server企业管理器属性”窗口中,点击”高级”选项卡;  3、在”连接设置”下的”登录超时(秒)”右边的框中输入一个比较大的数字,如 20。  查询分析器中也可以在同样位置进行设置。二、应用程序连接失败  以上的三种错误信息都是发生在 SQL Server 自带的客户端工具中,在应用程序中我们也会遇到类似的错误信息,例如:Microsoft OLE DB Provider for SQL Server (0x)Specified SQL server not found.Microsoft OLE DB Provider for SQL Server (0x)用户 ‘sa’ 登录失败。原因: 未与信任 SQL Server 连接相关联。Microsoft OLE DB Provider for ODBC Drivers 错误 ”.超时已过期.本文转摘自『IT学习者』

strSQLServer=”(local)”‘125.65.112.28 数据库镇答地址

strSQLUser=”sa”‘数据库御迟慧登录的账号

strSQLPassword=”123456″‘登录密码

strSQLDataBase=”n2023″‘数据库名称

最关键就是以上的代码了!填错一个就无法连接成功啊!仔细检查一下的旦或信息

数据库连接不上什么原因

SQL Server 代理无法启动并显示错误 18456

症状

SQL Server 代理服务无法启动,同时您可能会在 Windows 事件查看器中看到以下错误信息:

SQLServerAgent could not be started (reason:Unable to connect to server; SQLServerAgent cannot start).

另外,如果试图从命令行启动 SQL Server 代理服务(例如,C:\MSSQL7\BINN\>sqlagent -c –v),也可能在 C:\MSSQL7\LOG\SQLAGENT.OUT 文件中看到以下错误信息:

7/13/99 2:07:43 PM – ? SQLServerAgent starting under Windows NT service control

7/13/99 2:07:43 PM – ! SQLServer Error:18456, Login failed for user ‘DomainName\UserName’.

7/13/99 2:07:43 PM – ! Unable to connect to server; SQLServerAgent cannot start

7/13/99 2:07:44 PM – ? SQLServerAgent terminated (normally)

原因

BUILTIN\Administrators 登录没有访问 SQL Server 的权限或 BUILTIN\Administrators 登录已从 SQL Server 中删除,而 SQLAgent 服务正在 LocalSystem 帐户下启动。

如果 SQLAgent 服务在 SQL Server 企业管理器中单独列出的一个域帐户下或计算机帐户下启动,并且此帐户具有系统管理员 (sysadmin) 权限,则不会发生该问题。

替代方法

要将 BUILTIN\Administrators 帐户重新添加到 SQL Server 中,请启动 SQL 企业管理器。进入 \Servername\Security\Logins 并向 BUILTIN\Administrators 用户授予访问权限。

如果确实要拒绝 Windows NT 管理员对 SQL Server 的访问,可以删除 BUILTIN\Administrators 帐户。首先,将用于 SQL 代理服务的登录帐户作为 SQL Server 登录帐户来添加,并为该帐户分配系统管理员 (sa) 角色。然后从 BUILTIN\Administrators 帐户调用系统管理员 (sysadmin) 角色,或从 SQL 企业管理器中的 Logins 彻底删除 BUILTIN\Administrators 帐户。

原因太多了,例如:

服务器名错误

用户名错误,

密码错误

服务器端口错误

服务器没有运行

服务器设置错误

你需要做的是:确认服务器运行,确认参数正确

关于数据库无法连接服务器失败请稍后再试的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 怎么办?——处理数据库连接故障的方法 (数据库无法连接服务器失败请稍后再试)