课题_SQL Server ODBC数据源连接失败问题总结
SQL数据库连接失败的解决办法
1、点击"开始"-"运行",输入regedit,回车进入注册表编辑器;
2、依次展开注册表项,浏览到以下注册表键:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]
3、在屏幕右方找到名称"LoginMode",双击编辑双字节值;
看完如何解决前两个错误的方法之后,让我们来看一下如图 3 所示的第三个错误。
如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错。这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,并且是慢速连接时,有可能会导致以上的超时错误。有些情况下,由于局域网的网络问题,也会导致这样的错误。
4、 重新启动SQL Server服务。
在以上解决方法中,如果在第 1 步中使用"使用 Windows 身份验证"连接 SQL Server 失败,那么我们将遇到一个两难的境地:首先,服务器只允许了 Windows 的身份验证;其次,即使使用了 Windows 身份验证仍然无法连接上服务器。这种情形被形象地称之为"自己把自己锁在了门外",因为无论用何种方式,用户均无法使用进行连接。实际上,我们可以通过修改一个注册表键值来将身份验证方式改为 SQL Server 和 Windows 混合验证,步骤如下所示:
2、在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡;
3、在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如 20。
常见的SQLServer连接失败错误以及解决方法
常见的SQLServer连接失败错误以及解决方法常见的SQLServer连接失败错误以及解决方法a--sql server 不存在或访问拒绝错误有以下可能:a.sql server名称或者ip地址拼写有误b.服务器端网络配置错误c.客户端网络配置错误解决步骤:1.检查网络物理连接ping 服务器名称或者ping 服务器ip地址===》ping 服务器ip地址失败:说明物理连接出问题,需要检查硬件设备;需要注意将防火墙关掉,因为它也许会屏蔽你的ping命令===》ping 服务器ip地址成功 ping 服务器名称失败:说明服务器名称有问题。
如果服务器和客户端不在同一局域网内,很可能无法直接使用服务器名称标志服务器。
2.使用telnet命令检查sql server服务器工作状态 telnet 服务器ip地址 14323(默认端口号)===>如果有“无法打开连接”的信息,说明你的sql server服务没开启,或者你的tcp/ip协议没有启用,或者你的服务器没有在端口1433上监听3.检查服务器端的网络配置,看是否启用命名管道,是否启用tcp/ip协议这个可以在不同版本的sql server自带的工具管理器里找到,比如2000是服务器网络使用工具 2017是sql server配置管理器4.检查客户端的网络配置,查看使用的协议一般需要启用命名管道;b--用户sa登入失败错误有以下可能: 1.你的登入身份为“仅windows身份登入”2.你改完登入方式后,设置账户后没有运行sp_password第一个原因解决方法:以2000为例: 1.在服务器端使用企业管理器,并且选择"使用 windows 身份验证"连接上sql server2.展开"sql server组",鼠标右键点击sql server服务器的名称,选择"属性",再选择"安全性"选项卡3.在"身份验证"下,选择"sql server和 windows ".4.重新启动sql server服务.在以上解决方法中,如果在第1 步中使用"使用windows 身份验证"连接sql server 失败,那就通过修改注册表来解决此问题:1.点击"开始" "运行",输入regedit,回车进入注册表编辑器2.依次展开注册表项,浏览到以下注册表键:[hkey_local_machinesoftware microsoft mssqlserver mssqlserver]3.在屏幕右方找到名称"loginmode",双击编辑双字节值4.将原值从1改为2,点击"确定"5.关闭注册表编辑器6.重新启动sql server服务;--oruse[master]go exec xp_instance_regwrite n'hkey_local_machine',n'software/microsoft/mssqlserver/mssqlserver', n'loginmode', reg_dword,2go此时,用户可以成功地使用sa在企业管理器中新建sql server注册,但是仍然无法使用windows身份验证模式来连接sql server。
SQL server数据库连接中的一些问题
SQL SERVER数据库连接的一些问题Rainboy 整理于2012-11-16一、关于ntwdblib.dll一些编程语言连接SQL SERVER时,需要ntwdblib.dll。
比如用pb连接SQL2005或2008数据库时,可能会出现如下错误提示:unable to load the requested database interface.这不是PB的问题。
需要下载ntwdblib.dll然后将其copy到C:/WINDOWS/system32。
需要注意的是,要要保证ntwdblib.dll 这个文件的版本和sqlserver的版本对应,否则不会出现提示但就是连接不成功,会很郁闷。
下面是对应关系:1.ntwdblib.dll 版本为2000.2.8.0是对应SqlServer2000(这个是网络查资料和猜测,没装2000)3.ntwdblib.dll 版本为2000.80.194.0是对应SqlServer2005(这个是用实验证明可以用,本人就是用笔记本装了2005)4.ntwdblib.dll 版本为2000.80.2039是对应SqlServer2008(这个是猜测没有装2008)二、专用的接口文件如php连接SQLserver 需要php_mssql.dll。
*_mssql.dll可以放在应用程序目录中,也可以放到C:/WINDOWS/system32然后重启服务器。
三、配置SQL SERVER运行SQL Server 配置管理器:SQL Server Configuration Manager,打开协议Protocolsb. 允许命名管道"named pipes" 和"tcp/ip"c. 右键点击"tcp/ip",打开属性Properties 标签"IP addresses"d. 在TCP 动态端口"TCP Dynamic Ports" 填入1433e. 重启SQL Server四、常见问题总结1.Unable to connect to server确认SQLServer2005服务器正常.检查TCP/IP已经启用同时右键查看属性:已经启用是否选择是确认服务器正确之后,再确认ntwdblib.dll 文件位置是否放到了c:/windows/system32下。
1数据库连接失败的原因以及解决的方法
1数据库连接失败的原因以及解决的方法数据库连接失败可能有多种原因,包括但不限于以下几种:1.1网络问题数据库连接失败的一个常见原因是由于网络问题导致的连接超时或连接丢失。
这可能是因为网络不稳定、防火墙设置或者数据库服务器故障等原因导致的。
解决这个问题的方法可以包括:-检查网络连接是否正常,确保网络稳定;-检查防火墙设置,确保数据库服务器端口没有被阻塞;-如果数据库服务器出现故障,可以尝试重启数据库服务器。
1.2数据库配置问题数据库连接失败的另一个常见原因是由于数据库配置问题导致的。
这可能是由于数据库用户名、密码、数据库名等配置信息填写错误,或者数据库服务器未正确配置允许远程连接等原因导致的。
解决这个问题的方法包括:-检查数据库配置信息是否正确,包括用户名、密码、数据库名等;-检查数据库服务器配置,确保允许远程连接;-如果使用了连接池,可以尝试刷新连接池。
1.3数据库访问权限问题数据库连接失败的另一个原因是由于数据库访问权限问题导致的。
这可能是由于数据库用户没有足够的权限访问指定的数据库或表,或者数据库服务器配置了访问限制等原因导致的。
解决这个问题的方法包括:-检查数据库用户的权限,确保用户有足够的权限访问指定的数据库或表;-检查数据库服务器配置,确保没有设置访问限制;-如果使用了连接池,可以尝试使用有更高权限的用户账号进行连接。
1.4数据库服务未启动或异常数据库连接失败的另一个原因是由于数据库服务未启动或异常导致的。
这可能是由于数据库服务器未正常启动、宕机、磁盘空间不足等原因导致的。
解决这个问题的方法包括:-检查数据库服务是否已经启动,如果没有启动,可以尝试启动数据库服务;-检查数据库服务器的运行状态,确保数据库服务器正常运行;-如果磁盘空间不足,可以尝试清理或扩容磁盘空间。
1.5数据库连接池设置不当数据库连接失败的另一个原因是由于连接池设置不当导致的。
这可能是由于连接池的最大连接数、最大等待时间等参数设置不合理,导致连接池无法提供足够的连接或者等待时间过长等原因。
SQLServer数据库连接失败错误及解决方法
SQL S erver数据库连接失败错误及解决方法在使用SQL S erver的过程中,用户遇到的最多的问题莫过于连接失败了。
一般而言,有以下两种连接SQ L Ser ver 的方式,一是利用SQ L Ser ver 自带的客户端工具,如企业管理器、查询分析器、事务探查器等;二是利用用户自己开发的客户端程序,如ASP脚本、VB程序等,客户端程序中又是利用ODBC或者OL E DB等连接S QL Se rver。
下面,我们将就这两种连接方式,具体谈谈如何来解决连接失败的问题。
一、客户端工具连接失败在使用S QL Se rver自带的客户端工具(以企业管理器为例)连接SQLServe r时,最常见的错误有如下一些:1、SQLServe r 不存在或访问被拒绝Conne ction Open(Conn ect())2、用户'sa'登录失败。
原因:未与信任SQL Serv er 连接相关联。
3、超时已过期。
下面我们依次介绍如何来解决这三个最常见的连接错误。
第一个错误"SQL S erver不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。
一般说来,有以下几种可能性:1、SQL Serv er名称或IP地址拼写有误;2、服务器端网络配置有误;3、客户端网络配置有误。
要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。
首先,检查网络物理连接:ping<服务器I P地址>或者p ing <服务器名称>如果pi ng <服务器IP地址> 失败,说明物理连接有问题,这时候要检查硬件设备,如网卡、HUB、路由器等。
1、 数据库连接失败的原因以及解决的方法
1、数据库连接失败的原因以及解决的方法
连接失败的
原因
错误提示解决方法
服务器端数
据库未
启动错误提示:数据库连接失败解决方法:重新启动服务器端数据库,启动后服务器右下角任务栏会出现
图标,表示数据库已经启动。
服务器名不
正确错误提示:数据库连接失败解决方法:检查数据库名是否正确。
比如说服务器端的叫server,
那么客户端连接的服务器名必须是server.具体的方法是在服务器端
右下端用鼠标放在上面,可以显示出其名字。
客户端版本与数据库版本不一致解决方法:检查数据库版本(比如数据库是07III版的,客户端也必须是07III版)具体的方法是点击鼠标右键→属性→目标(T)可以看到客户端和数据库的安装路径以及版本号等详细信息
局域网不连
通解决方法:检查客户端电脑与服务器端电脑局域网是否连通。
方法是:把服务器端设置一个IP地址,在客户端用Ping命令ping 服务器IP. 在服务器端ping客户端IP。
如果能ping通,表示网络畅通,如果其中某一台客户端ping不通,检查其网线是否插好,该客户端的IP是
否在局域网的IP地址网段范围之内。
防火墙的阻
碍
解决方法:如果是系统默认防火墙,从“开始”→“设置”→“控制面版”
→“防火墙”,关掉服务器端和客户端防火墙再重新登陆客户端连接数据库。
如果安装了其他的防火墙,可以关闭其防火墙。
未注册客户
端使用
期限已
到
解决方法:与我司联系将客户端注册。
数据库连接失败的常见原因及解决办法
数据库连接失败的常见原因及解决办法数据库连接是许多应用程序和系统的核心组成部分,当连接失败时,将对应用程序的正常运行产生负面影响。
因此,了解数据库连接失败的常见原因以及相应的解决办法对于维护和优化系统具有重要意义。
本文将介绍一些常见的数据库连接失败原因,并提供相应的解决办法,以帮助读者更好地应对这些问题。
1. 网络问题数据库连接失败的最常见原因之一是网络问题。
网络故障、路由器问题以及防火墙配置错误都可能导致数据库连接失败。
在面对数据库连接失败时,首先需要确保网络连接正常。
解决办法:- 检查网络连接是否正常,包括网线是否插好,Wi-Fi是否正常运行。
- 检查路由器和防火墙的配置,确保数据库端口没有被阻止或限制。
2. 数据库服务器问题数据库服务器故障或配置错误也是数据库连接失败的常见原因之一。
数据库服务器可能会因为资源达到极限、配置错误、权限问题等原因导致连接失败。
解决办法:- 检查数据库服务器的资源使用情况,确保其没有达到极限。
- 检查数据库服务器的配置文件,确保数据库实例的监听端口与应用程序中配置的端口一致。
- 检查数据库服务器的用户权限,确保应用程序所使用的用户有足够的权限连接数据库。
3. 数据库连接字符串配置错误连接字符串是用于建立与数据库之间连接的关键部分。
连接字符串中的错误可能会导致数据库连接失败。
例如,连接字符串中可能未正确指定数据库服务器的地址、端口、数据库名等。
解决办法:- 检查连接字符串,确保其中的服务器地址、端口、数据库名等信息正确无误。
- 使用连接字符串测试工具(如ConnectionTester等)来验证连接字符串的有效性。
4. 数据库账户验证失败数据库账户验证失败也是导致数据库连接失败的常见原因之一。
验证失败可能是由于密码错误、账户被锁定或者账户权限不足等原因引起的。
解决办法:- 确保数据库账户的密码正确无误。
- 检查数据库账户是否被锁定或禁止访问。
- 检查数据库账户的权限,确保其具备连接所需的最低权限。
SQLServer安装使用报错及解决方案
SQLServer安装使用报错及解决方案在SQLServer的安装和使用过程中,可能会遇到一些报错信息,这些问题需要及时解决才能顺利进行数据库的操作。
本文将介绍一些常见的SQLServer安装使用报错,并提供相应的解决方案,帮助读者更好地应对这些问题。
一、无法安装SQLServer在安装SQLServer过程中,有时会出现无法继续安装的情况。
这可能是由于操作系统版本不兼容、安装文件损坏或其他原因引起的。
解决此问题的方案如下:1.检查操作系统版本:确保所使用的操作系统版本与SQLServer的系统要求相匹配。
2.重新下载安装文件:如果安装文件损坏,可尝试重新下载安装文件,并确保下载的文件完整可用。
3.运行安装程序时使用管理员权限:右键点击安装程序,选择“以管理员身份运行”以确保安装过程中拥有足够的权限。
二、无法连接到SQLServer在使用SQLServer时,可能会遇到无法连接到数据库的问题。
这可能是由于网络配置、服务未启动或防火墙设置等原因引起的。
以下是解决此问题的一些常见方法:1.检查网络配置:确保网络连接正常,数据库服务器所在的IP地址、端口号、实例名等配置信息正确。
2.确保SQLServer服务已启动:在Windows服务中,找到SQL Server服务并确认其状态为“运行中”。
3.检查防火墙设置:确保防火墙未阻止数据库连接请求,可在防火墙设置中配置允许使用的端口。
三、数据库文件损坏有时,在使用SQLServer时,数据库文件可能会损坏,导致无法正常读取或写入数据。
以下是一些解决此问题的方法:1.运行数据库维护工具:SQLServer提供了一些内置的维护工具,如SQL Server Management Studio,可用于修复损坏的数据库文件。
2.还原备份文件:如果有可用的备份文件,可以使用SQLServer的还原功能将备份文件还原到正常状态。
3.使用修复命令:SQLServer提供了一些修复命令,如DBCC CHECKDB,可用于检查和修复损坏的数据库文件。
SQL Server连接问题解决方案
SQL Server连接问题解决方案在使用 SQL Server 的过程中,用户遇到的最多的问题莫过于连接失败了。
一般而言,有以下两种连接 SQL Server 的方式,一是利用 SQL Server 自带的客户端工具,如企业管理器、查询分析器、事务探查器等;二是利用用户自己开发的客户端程序,如ASP 脚本、VB程序等,客户端程序中又是利用 ODBC 或者 OLE DB 等连接 SQL Server。
下面,我们将就这两种连接方式,具体谈谈如何来解决连接失败的问题。
在使用 SQL Server 自带的客户端工具(以企业管理器为例)连接 SQL Server时,最常见的错误有如下一些: 1、SQL Server 不存在或访问被拒绝ConnectionOpen (Connect())2、用户 sa 登录失败。
原因:未与信任 SQL Server 连接相关联。
3、超时已过期。
下面我们依次介绍如何来解决这三个最常见的连接错误。
第一个错误"SQL Server 不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。
一般说来,有以下几种可能性:1、SQL Server名称或IP地址拼写有误;2、服务器端网络配置有误;3、客户端网络配置有误。
要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。
首先,检查网络物理连接:ping <服务器IP地址>或者ping <服务器名称>如果 ping <服务器IP地址>失败,说明物理连接有问题,这时候要检查硬件设备,如网卡、HUB、路由器等。
还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如 ISA Server。
防火墙软件可能会屏蔽对 ping、telnet 等的响应,因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口。
如果ping <服务器IP地址>成功而 ping <服务器名称>失败,则说明名字解析有问题,这时候要检查 DNS 服务是否正常。
SQL Server数据库连接失败错误及解决方法
SQL Server数据库连接失败错误及解决方法在使用SQL Server 的过程中,用户遇到的最多的问题莫过于连接失败了。
一般而言,有以下两种连接SQL Server 的方式,一是利用SQL Server 自带的客户端工具,如企业管理器、查询分析器、事务探查器等;二是利用用户自己开发的客户端程序,如ASP 脚本、VB程序等,客户端程序中又是利用ODBC 或者OLE DB 等连接SQL Server。
下面,我们将就这两种连接方式,具体谈谈如何来解决连接失败的问题。
一、客户端工具连接失败在使用SQL Server 自带的客户端工具(以企业管理器为例)连接SQL Server时,最常见的错误有如下一些:1、SQL Server 不存在或访问被拒绝ConnectionOpen (Connect())2、用户'sa'登录失败。
原因:未与信任SQL Server 连接相关联。
3、超时已过期。
下面我们依次介绍如何来解决这三个最常见的连接错误。
第一个错误"SQL Server 不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。
一般说来,有以下几种可能性:1、SQL Server名称或IP地址拼写有误;2、服务器端网络配置有误;3、客户端网络配置有误。
要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。
首先,检查网络物理连接:ping <服务器IP地址>或者ping <服务器名称>如果ping <服务器IP地址> 失败,说明物理连接有问题,这时候要检查硬件设备,如网卡、HUB、路由器等。
还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如ISA Server。
防火墙软件可能会屏蔽对ping、telnet 等的响应,因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口。
SQL Server连接失败中的四个最常见错误
连接失败,请检查SQL注册属性SQL Server连接中的四个最常见错误:一."SQL Server 不存在或访问被拒绝"这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多.一般说来,有以下几种可能性:1,SQL Server名称或IP地址拼写有误2,服务器端网络配置有误3,客户端网络配置有误要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因.============= 首先,检查网络物理连接=============ping <服务器IP地址/服务器名称>如果ping <服务器IP地址>不成功,说明物理连接有问题,这时候要检查硬件设备,如网卡,HUB,路由器等.还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如ISA Server.防火墙软件可能会屏蔽对ping,telnet 等的响应因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口.如果ping <服务器IP地址>成功而,ping <服务器名称>失败则说明名字解析有问题,这时候要检查DNS 服务是否正常.有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,具体的方法是:1.使用记事本打开HOSTS文件(一般情况下位于C:\WINNT\system32\drivers\etc). 添加一条IP地址与服务器名称的对应记录,如:172.168.10.24 myserver2.或在SQL Server 的客户端网络实用工具里面进行配置,后面会有详细说明.============= 其次,使用telnet 命令检查SQL Server服务器工作状态=============telnet <服务器IP地址> 1433如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明SQL Server 服务器工作正常,并且正在监听1433端口的TCP/IP 连接如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动SQL Server 服务,也可能服务器端没启用TCP/IP 协议,或者服务器端没有在SQL Server 默认的端口1433上监听.=============接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道.是否启用了TCP/IP 协议等等=============可以利用SQL Server 自带的服务器网络使用工具来进行检查.点击:程序-- Microsoft SQL Server -- 服务器网络使用工具打开该工具后,在"常规"中可以看到服务器启用了哪些协议.一般而言,我们启用命名管道以及TCP/IP 协议.点中TCP/IP 协议,选择"属性",我们可以来检查SQK Server 服务默认端口的设置一般而言,我们使用SQL Server 默认的1433端口.如果选中"隐藏服务器",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接.============= 接下来我们要到客户端检查客户端的网络配置=============我们同样可以利用SQL Server 自带的客户端网络使用工具来进行检查,所不同的是这次是在客户端来运行这个工具.点击:程序-- Microsoft SQL Server -- 客户端网络使用工具打开该工具后,在"常规"项中,可以看到客户端启用了哪些协议.一般而言,我们同样需要启用命名管道以及TCP/IP 协议.点击TCP/IP 协议,选择"属性",可以检查客户端默认连接端口的设置,该端口必须与服务器一致.单击"别名"选项卡,还可以为服务器配置别名.服务器的别名是用来连接的名称,连接参数中的服务器是真正的服务器名称,两者可以相同或不同.别名的设置与使用HOSTS 文件有相似之处.通过以上几个方面的检查,基本上可以排除第一种错误.-----------------------------------------------------------------------------二."无法连接到服务器,用户xxx登陆失败"该错误产生的原因是由于SQL Server使用了"仅Windows"的身份验证方式,因此用户无法使用SQL Server的登录帐户(如sa )进行连接.解决方法如下所示:1.在服务器端使用企业管理器,并且选择"使用Windows 身份验证"连接上SQL Server操作步骤:在企业管理器中--右键你的服务器实例(就是那个有绿色图标的)--编辑SQL Server注册属性--选择"使用windows身份验证"--选择"使用SQL Server身份验证"--登录名输入:sa,密码输入sa的密码--确定2.设置允许SQL Server身份登录操作步骤:在企业管理器中--展开"SQL Server组",鼠标右键点击SQL Server服务器的名称--选择"属性"--再选择"安全性"选项卡--在"身份验证"下,选择"SQL Server和Windows ".--确定,并重新启动SQL Server服务.在以上解决方法中,如果在第 1 步中使用"使用Windows 身份验证"连接SQL Server 失败,那就通过修改注册表来解决此问题:1.点击"开始"-"运行",输入regedit,回车进入注册表编辑器2.依次展开注册表项,浏览到以下注册表键:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]3.在屏幕右方找到名称"LoginMode",双击编辑双字节值4.将原值从1改为2,点击"确定"5.关闭注册表编辑器6.重新启动SQL Server服务.此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,但是仍然无法使用Windows身份验证模式来连接SQL Server.这是因为在SQL Server 中有两个缺省的登录帐户:BUILTIN\Administrators<机器名>\Administrator 被删除.要恢复这两个帐户,可以使用以下的方法:1.打开企业管理器,展开服务器组,然后展开服务器2.展开"安全性",右击"登录",然后单击"新建登录"3.在"名称"框中,输入BUILTIN\Administrators4.在"服务器角色"选项卡中,选择"System Administrators"5.点击"确定"退出6.使用同样方法添加<机器名>\Administrator 登录.说明:以下注册表键:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginM ode的值决定了SQL Server将采取何种身份验证模式.1.表示使用"Windows 身份验证"模式2.表示使用混合模式(Windows 身份验证和SQL Server 身份验证).-----------------------------------------------------------------------------三.提示连接超时如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错.这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet 上的服务器,并且是慢速连接时,有可能会导致以上的超时错误.有些情况下,由于局域网的网络问题,也会导致这样的错误.要解决这样的错误,可以修改客户端的连接超时设置.默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是 4 秒,而查询分析器是15 秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因).具体步骤为:企业管理器中的设置:1.在企业管理器中,选择菜单上的"工具",再选择"选项"2.在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡3.在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如20.查询分析器中的设置:工具-- 选项-- 连接-- 将登录超时设置为一个较大的数字---------------------------------------------------------------------------------四.大部分机都用Tcp/ip才能成功,有次我发现用Named Pipes才可以?回复人:leimin(黄山光明顶)这是因为在WINDOWS 2000以后的操作系统中,MS为解决SQL SERVER的安全问题将TCP/IP配置为SQLSERVER的默认连接协议,你可以在CLIENT NETWORK UTILITY中看到TCP/IP和NAME PIPE的顺序。
SQL_Server数据库连接失败错误及解决方法
SQL Server数据库连接失败错误及解决方法在使用SQL Server 的过程中,用户遇到的最多的问题莫过于连接失败了。
一般而言,有以下两种连接SQL Server 的方式,一是利用SQL Server 自带的客户端工具,如企业管理器、查询分析器、事务探查器等;二是利用用户自己开发的客户端程序,如ASP 脚本、VB程序等,客户端程序中又是利用ODBC 或者OLE DB 等连接SQL Server。
下面,我们将就这两种连接方式,具体谈谈如何来解决连接失败的问题。
一、客户端工具连接失败在使用SQL Server 自带的客户端工具(以企业管理器为例)连接SQL Server时,最常见的错误有如下一些:1、SQL Server 不存在或访问被拒绝ConnectionOpen (Connect())2、用户'sa'登录失败。
原因:未与信任SQL Server 连接相关联。
3、超时已过期。
下面我们依次介绍如何来解决这三个最常见的连接错误。
第一个错误"SQL Server 不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。
一般说来,有以下几种可能性:1、SQL Server名称或IP地址拼写有误;2、服务器端网络配置有误;3、客户端网络配置有误。
要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。
首先,检查网络物理连接:ping <服务器IP地址>或者ping <服务器名称>如果ping <服务器IP地址> 失败,说明物理连接有问题,这时候要检查硬件设备,如网卡、HUB、路由器等。
还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如ISA Server。
防火墙软件可能会屏蔽对ping、telnet 等的响应,因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口。
SQL数据库连接失败的解决办法
在使用SQL Serv er 的过程中,用户遇到的最多的问题莫过于连接失败了。
一般而言,有以下两种连接SQL S erver的方式,一是利用SQL S erver自带的客户端工具,如企业管理器、查询分析器、事务探查器等;二是利用用户自己开发的客户端程序,如AS P 脚本、VB程序等,客户端程序中又有利用 ODB C 或者OLE D B 等连接 SQLServe r。
下面,我们将就这两种连接方式,具体谈谈如何来解决连接失败的问题。
一、客户端工具连接失败在使用 SQL Serv er 自带的客户端工具(以企业管理器为例)连接S QL Se rver时,最常见的错误有如下一些:1、S QL Se rver不存在或访问被拒绝Conne ction Open(Conn ect())2、用户's a'登录失败。
原因:未与信任SQL S erver连接相关联。
3、超时已过期。
下面我们依次介绍如何来解决这三个最常见的连接错误。
第一个错误"S QL Se rver不存在或访问被拒绝"通常是最复杂的,错误发生的原因比较多,需要检查的方面也比较多。
一般说来,有以下几种可能性:1、SQLServe r名称或I P地址拼写有误;2、服务器端网络配置有误;3、客户端网络配置有误。
要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。
首先,检查网络物理连接:pi ng <服务器IP地址>或者ping<服务器名称>如果p ing <服务器IP地址>失败,说明物理连接有问题,这时候要检查硬件设备,如网卡、HUB、路由器等。
ODBC连接失败解决办法
SQL Server连接中的三个最常见错误:一. "SQL Server 不存在或访问被拒绝"这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多.一般说来,有以下几种可能性:1,SQL Server名称或IP地址拼写有误2,服务器端网络配置有误3,客户端网络配置有误要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因.============= 首先,检查网络物理连接=============ping <服务器IP地址/服务器名称>如果ping <服务器IP地址> 不成功,说明物理连接有问题,这时候要检查硬件设备,如网卡,HUB,路由器等.还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如ISA Server.防火墙软件可能会屏蔽对ping,telnet 等的响应因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口.如果ping <服务器IP地址> 成功而,ping <服务器名称> 失败则说明名字解析有问题,这时候要检查DNS 服务是否正常.有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,具体的方法是:1.使用记事本打开HOSTS文件(一般情况下位于C:\WINNT\system32\drivers\etc). 添加一条IP地址与服务器名称的对应记录,如:172.168.10.24 myserver2.或在SQL Server 的客户端网络实用工具里面进行配置,后面会有详细说明.============= 其次,使用telnet 命令检查SQL Server服务器工作状态=============telnet <服务器IP地址> 1433如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明SQL Server 服务器工作正常,并且正在监听1433端口的TCP/IP 连接如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动SQL Server 服务,也可能服务器端没启用TCP/IP 协议,或者服务器端没有在SQL Server 默认的端口1433上监听.=============接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道.是否启用了TCP/IP 协议等等=============可以利用SQL Server 自带的服务器网络使用工具来进行检查.点击:程序-- Microsoft SQL Server -- 服务器网络使用工具打开该工具后,在"常规"中可以看到服务器启用了哪些协议.一般而言,我们启用命名管道以及TCP/IP 协议.点中TCP/IP 协议,选择"属性",我们可以来检查SQK Server 服务默认端口的设置一般而言,我们使用SQL Server 默认的1433端口.如果选中"隐藏服务器",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接.============= 接下来我们要到客户端检查客户端的网络配置=============我们同样可以利用SQL Server 自带的客户端网络使用工具来进行检查,所不同的是这次是在客户端来运行这个工具.点击:程序-- Microsoft SQL Server -- 客户端网络使用工具打开该工具后,在"常规"项中,可以看到客户端启用了哪些协议.一般而言,我们同样需要启用命名管道以及TCP/IP 协议.点击TCP/IP 协议,选择"属性",可以检查客户端默认连接端口的设置,该端口必须与服务器一致.单击"别名"选项卡,还可以为服务器配置别名.服务器的别名是用来连接的名称, 连接参数中的服务器是真正的服务器名称,两者可以相同或不同.别名的设置与使用HOSTS文件有相似之处.sqlserver服务器--> 开始菜单--> SQLserver--> 服务器网络实用工具--> 启用WinSock代理--> 代理地址:(sqlserver服务器IP)--> 代理端口--> 1433--> OK 了sqlserver客户端--> 开始菜单--> SQLserver--> 客户端网络实用工具--> 别名--> 添加--> 写入别名如"大力"--> "网络库"选tcp/ip--> 服务器名称写入远程ip或实例名--> OK了通过以上几个方面的检查,基本上可以排除第一种错误.-----------------------------------------------------------------------------二. "无法连接到服务器,用户xxx登陆失败"该错误产生的原因是由于SQL Server使用了"仅Windows "的身份验证方式, 因此用户无法使用SQL Server的登录帐户(如sa )进行连接.解决方法如下所示:1.在服务器端使用企业管理器,并且选择"使用Windows 身份验证"连接上SQL Server2.展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡3.在"身份验证"下,选择"SQL Server和Windows ".4.重新启动SQL Server服务.在以上解决方法中,如果在第 1 步中使用"使用Windows 身份验证"连接SQL Server 失败,那就通过修改注册表来解决此问题:1.点击"开始"- "运行",输入regedit,回车进入注册表编辑器2.依次展开注册表项,浏览到以下注册表键:[HKEY_LOCAL_MACHINE\SOFTW ARE\Microsoft\MSSQLServer\MSSQLServer]3.在屏幕右方找到名称"LoginMode ",双击编辑双字节值4.将原值从1改为2,点击"确定"5.关闭注册表编辑器6.重新启动SQL Server服务.此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,但是仍然无法使用Windows身份验证模式来连接SQL Server.这是因为在SQL Server 中有两个缺省的登录帐户:BUILTIN\Administrators<机器名> \Administrator 被删除.要恢复这两个帐户,可以使用以下的方法:1.打开企业管理器,展开服务器组,然后展开服务器2.展开"安全性",右击"登录",然后单击"新建登录"3.在"名称"框中,输入BUILTIN\Administrators4.在"服务器角色"选项卡中,选择"System Administrators "5.点击"确定"退出6.使用同样方法添加<机器名> \Administrator 登录.说明:以下注册表键:HKEY_LOCAL_MACHINE\SOFTW ARE\Microsoft\MSSQLServer\MSSQLServer\Log inMode的值决定了SQL Server将采取何种身份验证模式.1.表示使用"Windows 身份验证"模式2.表示使用混合模式(Windows 身份验证和SQL Server 身份验证).-----------------------------------------------------------------------------三.提示连接超时如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错.这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,并且是慢速连接时,有可能会导致以上的超时错误.有些情况下,由于局域网的网络问题,也会导致这样的错误.要解决这样的错误,可以修改客户端的连接超时设置.默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是 4 秒, 而查询分析器是15 秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因).具体步骤为:企业管理器中的设置:1.在企业管理器中,选择菜单上的"工具",再选择"选项"2.在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡3.在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如20.查询分析器中的设置:工具-- 选项-- 连接-- 将登录超时设置为一个较大的数字================================================================ ============总结:1.先保证ping通(有防火墙的先关闭防火墙)2.在命令提示符下执行:telnet <服务器ip地址> 1433 不会报错3.连接时使用用ip连接企业管理器4.如果不行SQL Server服务器--开始--程序--Microsoft SQL Server--服务器网络实用工具--启用WinSock代理--代理地址:(sqlserver服务器IP)--代理端口--1433---确定5.如果还不行,在客户端装个SQL Server客户端配置一下:开始--程序--Microsoft SQL Server--客户端网络实用工具--别名--添加--网络库选择"tcp/ip "--服务器别名输入SQL服务器名--连接参数--服务器名称中输入SQL服务器ip地址--如果你修改了SQL的端口,取消选择"动态决定端口",并输入对应的端口号--检查是否安装了补丁,查询分析器中执行下面的语句:select @@version。
SQLServer无法连接解决方案
SQLServer无法连接解决方案SQL Server无法连接解决方案SQL Server无法连接究竟应该如何解决呢?提示"无法连接到服务器,用户xxx登陆失败" 是因为什么原因呢?下面是由店铺为大家准备的SQL Server无法连接解决方案,喜欢的可以收藏一下!了解更多详情资讯,请关注店铺!SQL Server无法连接到服务器怎么办该错误产生的原因是由于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 失败,那就通过修改注册表来解决此问题:1.点击"开始"-"运行",输入regedit,回车进入注册表编辑器。
2.依次展开注册表项,浏览到以下注册表键:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServ er\MSSQLServer]3.在屏幕右方找到名称"LoginMode",双击编辑双字节值。
4.将原值从1改为2,点击"确定"。
5.关闭注册表编辑器。
6.重新启动SQL Server服务。
SQL_Server_ODBC数据源连接失败问题总结
SQL_Server_ODBC数据源连接失败问题总结SQL Server ODBC数据源连接失败问题总结本⽂针对SQL Server 不存在或是访问被拒绝、[Microsoft][ODBC Sql Server Driver]⽆效的连接、SQLSERVER错误:18452三种常见的连接错误问题,提出了解决的⽅法,并且亲⾝实践。
在提出问题之前,⾸先要检查防⽕墙和杀毒软件是否关闭,接着,在建⽴连接的时候,要保证SQL Server 服务器是打开的。
以上都做到后,请参考下⽂的出错情况以及解决⽅法。
⼀、错误1:SQL Server 不存在或是访问被拒绝SQLState:01000SQL Server 错误: 64[Microsoft][ODBC SQL Server Driver][DBNETLIB] ConnectionOpen (Connect()) 连接失败SQLState:08001SQL Server 错误: 17[Microsoft][ODBC SQL Server Driver][DBNETLIB] SQL Server 不存在或是访问被拒绝检查1433端⼝是否打开没有找到1433端⼝说明1433端⼝没有打开。
打开1433端⼝的⽅法:1.针对我安装的系统SP3,安装的SQL2005默认TCP/IP的状态是禁⽌的,因此:选择SQL Server Configuration Manager,然后分别打开SQL Server 2005 Services 和SQL Server 2005 Client Configuration,并把TCP/IP和Nameed Pipes的状态设置为Enabled;2.如果不⾏,就需要更新系统更新后,⼀定要重启电脑。
.重新检查1433端⼝,如下图所⽰,发现1433已经打开。
⼆、错误2:[Microsoft][ODBC Sql Server Driver]⽆效的连接再次打开ODBC,进⾏到第⼆步时,⼜出错了,不过这次的错误如图所⽰,显⽰的⽆效的连接,和之前的错误不同。
解决sqlserver的jdbc连接不上的问题
解决sqlserver的jdbc连接不上的问题
我是数据库的新手,忙了这么多天总算解决了jsp连接sql server 2000的问题,太高兴了,
大家都知道在xp 系统上无法安装sql server 企业版,只可以安装个人版,本来个人版也是可以的,但是由于微软公司关于一个安全性问题的考虑,让个人版的sql server 不监听1433端口.故jsp在通过驱动连接数据库的时候会出现该Error establishing socket错误,所以如果通过jdbc连接sql server 就必须给数据库打补丁,许多人都说sp3,sp4都可以,但我只用过sp3.
(其实很久以前我就听说过需要打补丁,在网上找的时候发现sp3有3个,不知道自己该用哪一个,后来一狠心全下载下来,准备都安了,没想到还有人说按这3个还有个顺序呢,)
现在我上下载的第3个,叫sql2ksp3.exe,下下来是exe文件,执行它,随便选个文件夹运行,然后打开该文件夹,执行里面的setup.bat,这样你的数据库就打上了补丁了,并且1433端口就监听了,
然后你在执行你的连接文件,就可以了,
有的时候还会出现一个问题说是什么sa用户没有建立可信任的连接,好象是这么个意思我记得不是很清楚了,这是因为你安装数据库的时候选用的是windows验证,应该选用混合模式,你打开企业管理器,选操作,点属性,在安全性中选择sql server 和windows这个选项,点确定,然后重启sqlserver和你的web服务器,在运行你的连接文件应该就可以了。
ODBC连接失败解决办法
SQL Server连接中的三个最常见错误:一. "SQL Server 不存在或访问被拒绝"这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多.一般说来,有以下几种可能性:1,SQL Server名称或IP地址拼写有误2,服务器端网络配置有误3,客户端网络配置有误要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因.============= 首先,检查网络物理连接=============ping <服务器IP地址/服务器名称>如果ping <服务器IP地址> 不成功,说明物理连接有问题,这时候要检查硬件设备,如网卡,HUB,路由器等.还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如ISA Server.防火墙软件可能会屏蔽对ping,telnet 等的响应因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口.如果ping <服务器IP地址> 成功而,ping <服务器名称> 失败则说明名字解析有问题,这时候要检查DNS 服务是否正常.有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,具体的方法是:1.使用记事本打开HOSTS文件(一般情况下位于C:\WINNT\system32\drivers\etc). 添加一条IP地址与服务器名称的对应记录,如:172.168.10.24 myserver2.或在SQL Server 的客户端网络实用工具里面进行配置,后面会有详细说明.============= 其次,使用telnet 命令检查SQL Server服务器工作状态=============telnet <服务器IP地址> 1433如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明SQL Server 服务器工作正常,并且正在监听1433端口的TCP/IP 连接如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动SQL Server 服务,也可能服务器端没启用TCP/IP 协议,或者服务器端没有在SQL Server 默认的端口1433上监听.=============接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道.是否启用了TCP/IP 协议等等=============可以利用SQL Server 自带的服务器网络使用工具来进行检查.点击:程序-- Microsoft SQL Server -- 服务器网络使用工具打开该工具后,在"常规"中可以看到服务器启用了哪些协议.一般而言,我们启用命名管道以及TCP/IP 协议.点中TCP/IP 协议,选择"属性",我们可以来检查SQK Server 服务默认端口的设置一般而言,我们使用SQL Server 默认的1433端口.如果选中"隐藏服务器",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接.============= 接下来我们要到客户端检查客户端的网络配置=============我们同样可以利用SQL Server 自带的客户端网络使用工具来进行检查,所不同的是这次是在客户端来运行这个工具.点击:程序-- Microsoft SQL Server -- 客户端网络使用工具打开该工具后,在"常规"项中,可以看到客户端启用了哪些协议.一般而言,我们同样需要启用命名管道以及TCP/IP 协议.点击TCP/IP 协议,选择"属性",可以检查客户端默认连接端口的设置,该端口必须与服务器一致.单击"别名"选项卡,还可以为服务器配置别名.服务器的别名是用来连接的名称, 连接参数中的服务器是真正的服务器名称,两者可以相同或不同.别名的设置与使用HOSTS文件有相似之处.sqlserver服务器--> 开始菜单--> SQLserver--> 服务器网络实用工具--> 启用WinSock代理--> 代理地址:(sqlserver服务器IP)--> 代理端口--> 1433--> OK 了sqlserver客户端--> 开始菜单--> SQLserver--> 客户端网络实用工具--> 别名--> 添加--> 写入别名如"大力"--> "网络库"选tcp/ip--> 服务器名称写入远程ip或实例名--> OK了通过以上几个方面的检查,基本上可以排除第一种错误.-----------------------------------------------------------------------------二. "无法连接到服务器,用户xxx登陆失败"该错误产生的原因是由于SQL Server使用了"仅Windows "的身份验证方式, 因此用户无法使用SQL Server的登录帐户(如sa )进行连接.解决方法如下所示:1.在服务器端使用企业管理器,并且选择"使用Windows 身份验证"连接上SQL Server2.展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡3.在"身份验证"下,选择"SQL Server和Windows ".4.重新启动SQL Server服务.在以上解决方法中,如果在第 1 步中使用"使用Windows 身份验证"连接SQL Server 失败,那就通过修改注册表来解决此问题:1.点击"开始"- "运行",输入regedit,回车进入注册表编辑器2.依次展开注册表项,浏览到以下注册表键:[HKEY_LOCAL_MACHINE\SOFTW ARE\Microsoft\MSSQLServer\MSSQLServer]3.在屏幕右方找到名称"LoginMode ",双击编辑双字节值4.将原值从1改为2,点击"确定"5.关闭注册表编辑器6.重新启动SQL Server服务.此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,但是仍然无法使用Windows身份验证模式来连接SQL Server.这是因为在SQL Server 中有两个缺省的登录帐户:BUILTIN\Administrators<机器名> \Administrator 被删除.要恢复这两个帐户,可以使用以下的方法:1.打开企业管理器,展开服务器组,然后展开服务器2.展开"安全性",右击"登录",然后单击"新建登录"3.在"名称"框中,输入BUILTIN\Administrators4.在"服务器角色"选项卡中,选择"System Administrators "5.点击"确定"退出6.使用同样方法添加<机器名> \Administrator 登录.说明:以下注册表键:HKEY_LOCAL_MACHINE\SOFTW ARE\Microsoft\MSSQLServer\MSSQLServer\Log inMode的值决定了SQL Server将采取何种身份验证模式.1.表示使用"Windows 身份验证"模式2.表示使用混合模式(Windows 身份验证和SQL Server 身份验证).-----------------------------------------------------------------------------三.提示连接超时如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错.这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器,并且是慢速连接时,有可能会导致以上的超时错误.有些情况下,由于局域网的网络问题,也会导致这样的错误.要解决这样的错误,可以修改客户端的连接超时设置.默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是 4 秒, 而查询分析器是15 秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因).具体步骤为:企业管理器中的设置:1.在企业管理器中,选择菜单上的"工具",再选择"选项"2.在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡3.在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如20.查询分析器中的设置:工具-- 选项-- 连接-- 将登录超时设置为一个较大的数字================================================================ ============总结:1.先保证ping通(有防火墙的先关闭防火墙)2.在命令提示符下执行:telnet <服务器ip地址> 1433 不会报错3.连接时使用用ip连接企业管理器4.如果不行SQL Server服务器--开始--程序--Microsoft SQL Server--服务器网络实用工具--启用WinSock代理--代理地址:(sqlserver服务器IP)--代理端口--1433---确定5.如果还不行,在客户端装个SQL Server客户端配置一下:开始--程序--Microsoft SQL Server--客户端网络实用工具--别名--添加--网络库选择"tcp/ip "--服务器别名输入SQL服务器名--连接参数--服务器名称中输入SQL服务器ip地址--如果你修改了SQL的端口,取消选择"动态决定端口",并输入对应的端口号--检查是否安装了补丁,查询分析器中执行下面的语句:select @@version。
SQL数据库连接失败的解决办法
SQL数据库连接失败的解决办法In the process of using SQL Server, the most problem that users encounter is that the connection fails. Generally speaking, there are two ways to connect to the SQL Server, one is to use SQL built-in Server client tools, such as enterprise manager, query analyzer, profiler; two is the use of users to develop their own client programs, such as ASP, VB script program, the client program and the use of ODBC or OLE DB connection SQL Server. Next, we will talk about these two ways of connection, specifically how to solve the problem of connection failure.First, the client tool connection failedWhen using SQL Server's own client tool (for example, enterprise manager) to connect to SQL Server, the most common errors are as follows:1, SQL Server does not exist or access is deniedConnectionOpen (Connect ())2, user'sa'logon failed. Reason: not associated with trusted SQL Server connection.3, the timeout has expired.Here we are in turn explaining how to solve the three most common connection errors.The first error, "SQL Server does not exist or is denied access", is usually the most complex, the reason for the error isrelatively large, and there are more aspects to be examined. Generally speaking, there are several possibilities:1, the SQL Server name or IP address spelled incorrectly;2, server-side network configuration is wrong;3, the client network configuration is wrong.To solve this problem, we usually follow the following steps to find out the cause of the error step by step.First, check the network physical connection:Ping < server IP address >perhapsPing < server name >If Ping < server IP address > fail to indicate physical connection problem, check hardware equipment such as network card, HUB, router and so on. Another possibility is that firewall software is installed between the client and the server, such as ISA Server. Firewall software may mask the response to Ping, Telnet, and so on, when checking connection problems, we have to temporarily shut down firewall software, or open all closed ports.If Ping < server IP address > successful and Ping < server name > failed, then the name resolve problem, at this time to checkthe DNS service is normal. Sometimes the client and the server is not in the same LAN, this is probably not directly use the server name to identify the server, we can use the HOSTS file to name resolution, the specific method:1, use Notepad to open the HOSTS file (usually inC:\WINNT\system32\drivers\etc)2, add a IP address and server name corresponding records, such as:172.168.10.24 MyserverYou can also configure it in the SQL Server client network utility, which will be described in detail later.Next, check the SQL Server server working state using the telnet command:Telnet < server IP address > 1433If the command is executed successfully, can see the cursor in the upper left corner of the screen flash flashing, indicating that the SQL Server server is working, and is listening on port 1433 TCP/IP connection; if a command returns "cannot open connection" error message, the server does not start the SQL Server service, the server may not enable the TCP/IP protocol server, or not in the SQL Server default port 1433 monitor.Next, we'll check the server's network configuration on the server, check whether the named pipe is enabled, whether theTCP/IP protocol is enabled, and so on. We can use SQL Server own server network to use tools to check.Click: program > Microsoft SQL Server > server network using tools, after opening the tool to see the picture as shown in the following picture:From here, we can see what protocols have been enabled by the server. In general, we enable named pipes as well as TCP/IP protocols.Click on the TCP/IP protocol and select properties, so we can check the settings for the default port of the SQL Server service, as shown in the following figure:In general, we use the default port 1433 of SQL Server. If the hidden server is selected, it means that the client cannot see the server through the enumeration server, and it has a protective effect, but it doesn't affect the connection.Check out the server side network configuration, and then we'll go to the client to check the client's network configuration. We can also use SQL Server own client network using tools to check, the difference is that this is the client to run this tool.Click: program > Microsoft SQL Server > client network using tools, after opening the tool to see the picture as shown in the following picture:From here, we can see which protocols are enabled by the client.In general, we also need to enable named pipes as well as TCP/IP protocols.Click the TCP/IP protocol and select properties to check the settings for the client's default connection port, as shown in the following figure.The port must be consistent with the server.Click the alias tab, and you can also configure aliases for the server. The alias of the server is the name used to connect, and the server in the connection parameter is the real server name, both of which can be the same or different. As shown in the following figure, we can use Myserver instead of the real server name sql2kcn-02, and use the network library Named Pipes. The alias setting is similar to using the HOSTS file.Through the above examination, the cause of error 1 can be eliminated basically. Here's a more detailed description of how to solve the bug 2.When the user attempts to use SA in the query analyzer to connect to the SQL Server,Or use the SA in the enterprise manager to create a new SQL Server. When you register, you'll often encounter error information as shown in figure 2. The reason for this error is that the SQL Server uses a "Windows only" authentication method, so the user cannot connect with the login account of the SQL Server (such as SA). The solution is as follows:1, use the enterprise manager on the server side and choose to use Windows authentication to connect to SQL Server;2. Expand the SQL Server group, right-click the name of the SQL Server server, select properties, and then select the security tab;3, under authentication, select SQL, Server, and Windows".4. Restart the SQL Server service.In the above solution, if use Windows authentication in the first step SQL Server connection fails, then we will encounter a dilemma: first, the server allows only the authentication of Windows; secondly, even though the use of Windows authentication is still not connected to the server. This situation is visually called "locking yourself out of the door" because no user can use the connection in any way. In fact, we can change authentication to SQL, Server, and Windows hybrid validation by modifying a registry key, as shown below:1, click start, run, enter regedit, enter, and enter the registry editor;2, in turn expand the registry key, browse to the following registry key:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLSer ver]3, find the name "LoginMode" on the right of the screen anddouble-click edit double byte values;4, the value will be changed from 1 to 2, click "ok";5, close the registry editor;6. Restart the SQL Server service.At this point, the user can successfully use SA to create a new SQL Server registry in the enterprise manager, but still cannot use the Windows authentication mode to connect to SQL Server. This is because there are two default login accounts in SQL Server: BUILTIN\Administrators and machine name\Administrator are deleted. To restore these two accounts, you can use the following methods:1, open the enterprise manager, expand the server group, and then expand the server;2, expand security, right click login, and then click New login";3, in the name box, enter BUILTIN\Administrators;4, on the server roles tab, select System Administrators";5, click OK to exit;6, use the same method to add machine name \Administrator login.Following registry keyHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServ er\LoginModeThe value determines what authentication mode the SQL Server will take.This value is 1, indicating the use of the Windows authentication mode; the value is 2, indicating the use of mixed mode (Windows authentication and SQL Server authentication).After looking at how to solve the first two errors, let's look at the third errors shown in figure 3.If you encounter third errors, generally speaking, the client has found the server and can connect, but the connection time is greater than the allowable time to cause an error. This usually occurs when a user runs an enterprise manager on Internet to register another server on the same Internet, and a slow connection may cause the timeout error above. In some cases, such problems can also result from local network problems.To resolve such errors, you can modify the connection timeout settings for the client. By default, registered another SQL Server through the enterprise manager timeout is 4 seconds, while the query analyzer is 15 seconds (which is why the enterprise manager error occurs the possibility of more reasons). Specific steps for:1, in the enterprise manager, select the "tools" on the menu,and then select "options"";2, in the pop-up SQL Server enterprise manager properties window, click the advanced tab;3, in the connection settings under the "login timeout (seconds)" to the right of the box, enter a larger number, such as 20.The query analyzer can also be set in the same location.Two, the application connection failedThe above three error messages occur in the client tool that comes with SQL Server, and we will encounter similar error information in the application, for example:Microsoft, OLE, DB, Provider, for, SQL, Server (0x80004005)[DBNETLIB][ConnectionOpen (Connect ()).]Specified, SQL, server, not, found.Microsoft, OLE, DB, Provider, for, SQL, Server (0x80004005)User'sa'logon failed. Reason: not associated with trusted SQL Server connection.Microsoft, OLE, DB, Provider, for, ODBC, Drivers,error,'80004005'.[Microsoft][ODBC SQL Server Driver] timeout has expiredFirst, let's take a detailed look at the following diagram to see what makes the difference between using ODBC and using OLE DB to connect to SQL Server.From the figure above, we can see that in actual use, the application creates and uses various ADO objects, and the ADO object framework calls for the enjoyment of the OLE DB provider. In order to access the SQL Server database, OLE DB provides two different approaches: the OLE DB provider for SQL Server and the OLE DB provider for ODBC. These two different methods correspond to two different connection strings, and the standard connection string is written as follows:1, use the OLE DB provider for SQL Server:Using SQL Server authentication:oconn。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL Server ODBC数据源连接失败问题总结
本文针对SQL Server 不存在或是访问被拒绝、[Microsoft][ODBC Sql Server Driver]无效的连接、SQLSERVER错误:18452三种常见的连接错误问题,提出了解决的方法,并且亲身实践。
在提出问题之前,首先要检查防火墙和杀毒软件是否关闭,接着,在建立连接的时候,要保证SQL Server 服务器是打开的。
以上都做到后,请参考下文的出错情况以及解决方法。
一、错误1:SQL Server 不存在或是访问被拒绝
SQLState:01000
SQL Server 错误: 64
[Microsoft][ODBC SQL Server Driver][DBNETLIB] ConnectionOpen (Connect()) 连接失败
SQLState:08001
SQL Server 错误: 17
[Microsoft][ODBC SQL Server Driver][DBNETLIB] SQL Server 不存在或是访问被拒绝
检查1433端口是否打开
没有找到1433端口
说明1433端口没有打开。
打开1433端口的方法:
1.针对我安装的系统SP3,安装的SQL2005默认TCP/IP的状态是禁止的,因此:
选择SQL Server Configuration Manager,然后分别打开SQL Server 2005 Services 和SQL Server 2005 Client Configuration,并把TCP/IP和Nameed Pipes的状态设置为Enabled;
2.如果不行,就需要更新系统
更新后,一定要重启电脑。
.重新检查1433端口,如下图所示,发现1433已经打开。
二、错误2:[Microsoft][ODBC Sql Server Driver]无效的连接
再次打开ODBC,进行到第二步时,又出错了,不过这次的错误如图所示,显示的无效的连接,和之前的错误不同。
连接失败
Sqlstate :'01000'
Sql server错误:14
[Microsoft][ODBC Sql Server Driver][DBNETLIB] connectionOpen(Invalid Instance ())
连接失败:
Sql State:'08001'
Sql Server错误:14
[Microsoft][ODBC Sql Server Driver]无效的连接
原因在于你的服务器没有启动,只要启动服务器即可
解决的方法如下:
1.选择下图的SQL Server Surface Area Configuration
接着如下图所示,依次点击Surface Area Configuration for Services and Connections和Surface Area Configuration for Features
如下面两个图所示,必须保证startup type为Automic,以及service status为Running(即start按钮键为灰色)。
三、错误3:SQLSERVER错误:18452
设置完毕后,再次打开ODBC,进行到第二步时,又出错了,不过这次的错误又和之前的错误不同,
SQLSTATE:28000
SQLSERVER错误:18452
[MICROSOFT][ODBC SQLSERVER DRIVER][SQL SERVER]用户‘sa’ 登录失败
原因:未与信任SQL Server连接相关联该错误产生的原因是由于
SQL Server使用了"仅 Windows"的身份验证方式,因此用户无法使用
SQL Server的登录帐户(例如 sa )进行连接。
SQL 服务器已配置为在 " Windows 身份验证模式(Windows 身份验证) " 操作和不允许使用 SQL 帐户。
解决方法如下:
1、设置允许SQL Server身份登录
操作步骤:
第一步:在“Microsoft SQL Server Management Stdio”中,展开"SQL Server 组",鼠标右键点击SQL Server服务器的名称。
第二步:选择"属性"
第三步:再选择"安全性"选项卡
第四步:在"身份验证"下,选择"SQL Server和Windows身份验证模式"
第五步:确定,并重新启动SQL Server服务。
2、如果还是没解决,可以检查SA用户是否被打开:
第一步:右键SA用户,打开属性。
第二步:选择“状态”选项卡,勾选登陆中的启用。
SA没有被启用,在数据库刚开始使用的时候很容易出现,安装的SQLServer,SA 用户默认是关闭的,往往不被人知道。
当然可以新建一个用户,限于篇幅原因,读者参考下面的资料
/share/detail/32872545
到此,创建到SQL Server 2005的数据源成功!附图如下。