SQL Server2005远程连接 (报错:已成功与服务器建立连接,但是在登录前的握手期间发生错误)

来源:互联网 发布:cnc数控编程 编辑:程序博客网 时间:2024/05/16 14:27

SQL Server2005默认是不允许远程连接数据库的。远程连接SQL Server2005报如下错误:

已成功与服务器建立连接,但是在登录前的握手期间发生错误。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 0 - 管道的另一端上无任何进程。


问题已经解决,解决方案如下:
一、为 SQL 启用远程连接
1、单击“开始”==>“程序” ==> “Microsoft SQL Server 2005” ==> “配置工具” ==> 单击“SQL Server 外围应用配置器”。
2、在“SQL Server 2005 外围应用配置器”页上,单击“服务和连接的外围应用配置器”。
3、在“服务和连接的外围应用配置器”页上,展开“数据库引擎(Database Engine)” ==> 单击“远程连接”,选择“本地连接和远程连接”单选按钮,单击适用于您的环境的相应协议,然后单击“应用”。
4、 在“服务和连接的外围应用配置器”页上,展开“数据库引擎” ==> 单击“服务”,点击“停止”按钮,等待 MSSQLSERVER 服务停止,然后单击“启动”以重新启动 MSSQLSERVER 服务。


二 、启用 SQL Server Browser 服务
1、单击“开始” ==> “程序” ==> “Microsoft SQL Server 2005” ==> “配置工具” ==> 单击“SQL Server 外围应用配置器”。
2、在“SQL Server 2005 外围应用配置器”页上,单击“服务和连接的外围应用配置器”。
3、在“服务和连接的外围应用配置器”页上,单击“SQL Server Browser”,在“启动类型”中单击“自动”选项,然后单击“应用”。
注意:在单击“自动”选项后,每次启动 Microsoft Windows 时将自动启动 SQL Server Browser 服务。

4、单击“启动”,然后单击“确定”。


三、在 Windows 防火墙中为SQL Server 2005 创建例外
1、在 Windows 防火墙中,单击“例外”选项卡,然后单击“添加程序”。
2、 在“添加程序”窗口中,单击“浏览”。
3、单击 C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\sqlservr.exe 可执行程序,单击“打开”,然后单击“确定”。
注意:上述路径可能会根据 SQL Server 2005 的安装位置而不同。


四、在 Windows 防火墙中为 SQL Server Browser 服务创建例外
1、在 Windows 防火墙中,单击“例外”选项卡,然后单击“添加程序”。
2、 在“添加程序”窗口中,单击“浏览”。
3、 单击 C:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe 可执行程序,单击“打开”,然后单击“确定”。

五、远程连接端口设置(很关键的一步,很多方法只讲了一到四步,却没有讲到第五步)
1、在服务器上打开SQL Server Configuration Manager。选择SQL Server配置治理器 ==> SQL Server 2005网络配置 ==> MSSQLSERVER的协议 ==> TCP/IP,在弹出对话框中选择IP地址 ==> IPALL ==> TCP端口,设置为可用端口。(如果默认的1433端口老是连接不上,你就设置为你确认已经打开的端口试试,如21端口等)
2、在“服务和连接的外围应用配置器”页上,展开“数据库引擎”,依次单击“服务”和“停止”,等待 MSSQLSERVER 服务停止,然后单击“启动”以重新启动 MSSQLSERVER 服务。


按照上面的步骤,就可以完成远程连接数据库的功能!