昨天还好好的,今天运行程序发现连接错误,查了一下发现自动启动的SQL sever服务没有开,记录下来以备后用。
以下来自转载:
SQL 网络接口: 定位指定的 Server/Instance 时出错
error: 40 – 无法打开到SQL Server的连接
现象:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未 找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 – 无法打开到 SQL Server 的连接)
解决思路:
1,本地是否可以连接?
2,确认你的sql server服务是否被停用
3,在sql 配置管理器里面能看见
如果启用了的话 多半是你的连接字符串写的有问题
正确的连接字符串应该是ip\实例名字(本机的话可以写成127.0.0.1\实例名字 local\实例名字)
或主机名字\实例名字(主机名字是指右键你的电脑属性里面可以看到)
4,如果你的主机名字在安装sql server后更改过名字 请执行相应的程序修改sql server 网上资料很多
5,如果还不行的话 就是更改了默认端口 在ip或主机名字后面加 ,端口号 127.0.0.1,3333\实例名字
开启SQL的远程连接
操作:
1.登陆改为混合模式:以windows方式连接并进入数据 库,右键点击你的数据服务器->属性->安全性>选中Sql server 和windows 验证方式。
2.开始-Micorsoft Sql Server-配置工具-SQL Server外围应用配置-服务和连接的外围应用配置-MSSQLSERVER(此处注意:如果自己安装了一个SQL Server的版本,在安装vs2005时也安装了默认的Express版的SQL Server在这里会显示两个数据库服务器,如图1
图1
),选择要开启远程连接的数据库-DataBase Engin-远程连接-选择“本地连接和远程连接”-选择“同时使用TCP/IP和Named Pipes”-点应用或确定-提示“必须重启数据库才能生效……”-@@先不管
再选MSSQLSERVER下的Analysis Service-远程连接-本地连接和远程连接-应用或确定-提示-@@先不管
3.开始-Micorsoft Sql Server-配置工具-SQL Server Configuration Manager-打开后如图2
图2
选中SQL Server 2005网络配置-选择要开启远程连接的数据库服务器(如MSSQLSERVER的协议)-在右侧选择Tcp/Ip协议-双击-在协议选项卡下把已启用改 为:是,切换到IP地址选项卡-(IP1设置)把活动和已启用都改为:是,并检查一下TCP端口是否为1433。(IPAll设置)Tcp动态端口和端口 都设为1433,如图3
图3
好,现在重启数据库服务器,方法:
开始-Micorsoft Sql Server-配置工具-SQL Server Configuration Manager-打开后如图2-Sql Server2005服务-找到SQl Server(我的有两个版本)-选中点右键-重新启动-ok
现在是只欠东风了,
最后就是防火墙的设置了:
打开防火墙-例外-添加程序-浏览-C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\sqlservr.exe;C:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe;C:\Program Files\Microsoft SQL Server\90\Shared\sqlwriter.exe
大功告成!
在局域网或Internet上的一台电脑上-win+r-cmd-telnet 你的ip 1433-看看是不是能登陆上一个黑色的telnet窗口?。
转自:http://hi.baidu.com/lsong121/item/3ea25d1e4274d2701009b5ae
DOS开启SQL server服务办法:
如下指令:
net start mssqlserver //这是启动sqlserver服务
net stop mssqlserver //这是停止sqlserver服务
net pause mssqlserver //这是暂停sqlserver服务