刚刚安装的数据库系统,按照默认安装的话,很可能在进行远程连接时报错,通常是错误:" 在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) " 搜MSDN ,上面有一片机器翻译的文章,是在让人难以明白,现在总结如下:明白了SQL Server 是个网络数据库就可迎刃而解了,简单的分为下面的集中情况。
1. 数据库引擎没有启动。
有两种启动方式:
(1) 开始-> 程序->Microsoft SQL Server 2005->SQL Server 2005 外围应用配置器, 在打开的界面单击" 服务的连接的外围应用配置器", 在打开的界面中找到Database Engine, 单击" 服务", 在右侧查看是否已启动, 如果没有启动可单击" 启动", 并确保" 启动类型" 为自动, 不要为手动, 否则下次开机时又要手动启动;
(2) 可打开: 开始-> 程序->Microsoft SQL Server 2005-> 配置工具->SQL Server Configuration Manager, 选中SQL Server 2005 服务中SQL Server(MSSQLSERVER) , 并单击工具栏中的" 启动服务" 按钮把服务状态改为启动;
使用上面两种方式时, 有时候在启动的时候可能会出现错误, 不能启动, 这时就要查看"SQL Server 2005 配置管理器" 中的SQL Server 2005 网络配置->MSSQLSERVER 协议中的VIA 是否已启用, 如果已启用, 则把它禁止. 然后再执行上述一种方式操作就可以了.
2. 是否已经允许远程连接。
这个部分可以简单的分为4 个方面,分别是在 SQL Server 上启用远程连接、启用SQL Server 浏览服务、在Windows 防火墙中为SQL Server 2005 创建例外和在Windows 防火墙中为“SQLBrowser” 创建例外。下面是几个具体的操作方式,摘自MSDN ,个人觉得文章的黑体部分应当特别的一起我们的注意。
在SQLServer
实例上启用远程连接
1.
指向“
开始->
程序->Microsoft SQL Server 2005->
配置工具->SQL Server
外围应用配置器
”
2.
在“SQL Server 2005
外围应用配置器”
页,
单击“
服务和连接的外围应用配置器
”
3.
然后单击展开“
数据库引擎”
, 选中“
远程连接”
,
在右边选中“
本地连接和远程连接”
,
再选择要使用的协议,(
这个地方应当启用TCP/IP
和命名管道服务!)
单击“
应用”
,您会看到下消息:
“
直到重新启动数据库引擎服务后,对连接设置所做的更改才会生效。”
,单击“
确定”
按钮返回
4.
展开“
数据库引擎”
, 选中“
服务”
,在右边单击“
停止”
,等到 MSSQLSERVER
服务停止,
然后单击“
启动”
,重新启动MSSQLSERVER
服务。
启用 SQLServer
浏览器服务
1.
指向“
开始->
程序->Microsoft SQL Server 2005->
配置工具->SQL Server
外围应用配置器
”
2.
在“SQL Server 2005
外围应用配置器”
页,
单击“
服务和连接的外围应用配置器
”
3.
然后单击展开“SQL Server Browser”
, 选中“
服务”
,在右边“
启动类型”
选择“
自动”
,
再单击“
启动”
,单击“
确定”
按钮返回
在Windows
防火墙中为“SQL Server 2005”
创建例外
1.
在 Windows
防火墙设置界面中,选择“
例外”
选项卡,然后单击“
添加程序
”
2.
在“
添加程序窗口”
中单击“
浏览
”
3.
然后找到“C:/ProgramFiles/Microsoft Files/Microsoft SQL Server/ MSSQL.1 /MSSQL/Binn/sqlservr.exe”
,
单击“
确定”
返回
注意 : 路径可能会根据 SQL Server 2005
安装不同而不同。 MSSQL.1
是占位符,对应数据库实例ID
。
4.
对每个需要打开远程访问的SQL Server 2005
实例,重复步骤 1
至 3
。
在Windows
防火墙中为“SQLBrowser”
创建例外
1.
在 Windows
防火墙设置界面中,选择“
例外”
选项卡,然后单击“
添加程序
”
2.
在“
添加程序窗口”
中单击“
浏览
”
3.
然后找到“C:/ProgramFiles/Microsoft Files/Microsoft SQL Server/90/Shared/sqlbrowser.exe”
,
单击“
确定”
返回
注意 : 路径可能会根据 SQL Server 2005
安装不同而不同。
在使用.NET 开发进行时,会遇到使用连接字符串连接SQL Server 2005 数据库使用机器名称和localhost 都能连接,但是使用IP 地址却不能连接的问题,解决的办法是在SQL Server 实例上启用本地和远程连接,并且在选择协议的时候使用TCP/IP 和命名管道服务即可解决。