使用SQL Server 2008远程链接时SQL数据库不成功的解决方法

Rochelle ·
更新时间:2024-09-20
· 720 次阅读

远程连接SQL Server 2008,服务器端和客户端配置

关键设置:

第一步(SQL2005、SQL2008):

开始-->程序-->Microsoft SQL Server 2008(或2005)-->配置工具-->SQL Server 配置管理器-->SQL Server网络配置-->MSSQLSERVER(这个名称以具体实例名为准) 的协议-->TCP/IP-->右键-->启用

第二步:

SQL2005:

开始-->程序-->Microsoft SQL Server 2005-->配置工具-->SQL Server 2005外围应用配置器-->服务和连接的外围应用配置器 -->Database Engine -->远程连接,选择本地连接和远程连接并选上同时使用Tcp/Ip和named pipes.

(附:如何配置 SQL Server 2005 以允许远程连接:http://support.microsoft.com/kb/914277/zh-cn )

SQL2008:

打开SQL Server Management Studio-->在左边[对象资源管理器]中选择第一项(主数据库引擎)-->右键-->方面-->在方面的下拉列表中选择[外围应用配置器]-->将RemoteDacEnable置为True.(这一步很关键

Express:

如果XP有开防火墙,在例外里面要加入以下两个程序:
C:/Program Files/Microsoft SQL Server/MSSQL.1/MSSQL/Binn/sqlservr.exe,
C:/Program Files/Microsoft SQL Server/90/Shared/sqlbrowser.exe

第三步:

开始-->程序-->Microsoft SQL Server 2008(或2005)-->配置工具-->SQL Server 配置管理器-->SQL Server 服务-->右击SQL Server(MSSQLSERVER) (注:括号内以具体实例名为准)-->重新启动

第四步:

服务器端开启sa用户。开始 -> 程序 -> Microsoft SQL Server 2008 -> Microsoft SQL Server Management Studio -> 主数据库引擎 -> 安全性 -> 登录名 -> sa,设置密码。

第五步:

在客户端登陆服务器端数据库。如下图所示:

第六步:

C#工程更改数据库连接字符串。打开C#工程 -> 解决方案资源管理器 -> app.config -> 更改。示例如下:

[c-sharp] 

connectionString="data source=服务器IP/实例名;initial catalog=数据库名;User ID=用户名;password=密码" 

第七步:

Good Luck! Enjoy……

用户在使用SQL Server 2008远程链接时,可能会弹出如下对话框:

在链接SQL服务器时发生网络链接错误或特定实例错误。SQL服务器不存在或者链接不成功。请验证用户名是否正确或SQL服务器是否已经配置远程链接功能。(错误发现方:命名管道供应方。错误代号:40---无法和SQL服务器进行链接)

如何处理这一问题?

用户如果发现这个错误提醒,需要检查三个方面的配置,并做出相关修改。(以下所标注的配置措施均以SQL 2008服务器为模板)

(一)用户需要做的第一件事是检查SQL数据库服务器中是否允许远程链接。在SQL 2008服务器中可以通过打开SQL Server 2008管理项目(SQL Server 2008 Management Studio,)来完成这项检查。其具体操作为:

(1)右击SQL Server 2008选项,选择SQL Server 2008 Management Studio:

(2)打开“服务器属性(Server Properties)” (右键连接名称-属性)

选择“允许用户对该服务器进行远程链接”选项后,检查是否问题已经排除。如果远程链接已经成功,该过程已经完成。若用户发现“提醒错误对话框”依然弹出,那么还需要做的是:

(二)为微软SQL服务器(MSSQLServer)配置相应协议。

  此时用户要做的是检查SQL网络链接配置。打开“SQL服务器配置管理”选项>打开“该节点的SQL服务器网络配置选项”>选择“微软SQL服务器网络协议”选项(或用户的SQL服务器中为SQL服务器配置网络协议的选项,不同版本的SQL名称可能不同):

确定“微软SQL服务器网络选项协议”中的TCP/IP协议对服务器来说是有效的。再次检查是否已经可以执行远程链接。若“错误提醒对话框”依然弹出,我们需要进一步检查SQL服务器防火墙选项。

(三)检查SQL服务器防火墙设置 (快捷步骤-直接关闭防火墙(不安全))

如果在进行完上两步操作后,用户端计算机仍然无法远程链接到SQL服务器,用户需要做的是对SQL服务器防火墙进行重新配置。在进行这一步操作时,首先找到SQL服务器上那个端口支持TCP/IP协议。用户可以在SQL服务器防火墙已经处于运行状态下,点击“TCP/IP协议”选择“属性”:

  从上图中我们可以看出,这台SQL服务器上支持TCP/IP协议的是1433端口。下一步要做的是在防火墙的配置中允许1433端口支持TCP/IP协议即可。如果服务器上运行的是Windows 7操作系统,其配置步骤为(其他微软操作系统的做法类似),打开“控制面板”选择“Windows防火墙”选项:

  选择“高级设置”后,在右边菜单栏中找出“具有高级安全选项的Windows防火墙”并将其打开。打开后会发现在左边菜单栏中有“入站规则(Inboud Rules)”选项。将该选项打开,并在右边菜单栏中选择“新建规则(New Rule)”选项:

打开“新建规则”选项后,利用“新内置绑定规则向导”为1433端口配置“内部绑定协议”配置为适用于TCP/IP协议即可。(前提是,需要完成该步骤以前所述的所有步骤),根据下面的几幅图为1433端口配置适用于1433端口即可:

完成上述的三大步骤,并确认每一步都操作正确后,用户的SQL服务器即可支持远程链接,一切万事ok了。

(注意:完成第二步骤的时候,必须先重启sql服务才可以)(net stop mssqlserver   net start mssqlserver)。

您可能感兴趣的文章:MySQL远程连接丢失问题解决方法(Lost connection to MySQL server)SQL Server 2008 R2:error 26 开启远程连接详解Sql server 2008 express远程登录实例设置 图文教程MYSQL不能从远程连接的一个解决方法(s not allowed to connect to this MySQL server)SQL Server 2005 开启数据库远程连接的方法SQL SERVER 2008 R2配置管理器出现“远程过程调用失败”(0x800706be)错误提示如何远程连接SQL Server数据库图文教程远程连接局域网内的sql server 无法连接 错误与解决方法远程连接SQLSERVER 2000服务器方法远程登陆SQL Server 2014数据库的方法



SQL Server SQL 方法 sql数据库

需要 登录 后方可回复, 如果你还没有账号请 注册新账号