winxp、Win7+sql server2005不能IP连接

系统重装,原先VS项目WebConfig里面的数据库连接是用IP连接的(connectionString="Data Source= 192.168.10.182;Initial Catalog= Register; Persist Security Info=True; User ID=sa;password=000000"  providerName="System.Data.SqlClient",),系统环境是winxp+sql server2005(其实Win7也是一样的),装完系统之后,重新打开项目,提示"不能登录,是否已经打开远程登录控制",意识到sqlserver服务没有开(因为平时不是一直使用sqlserver,所以都会把sqlserver相关几个服务禁用掉以节省资源,同是在这里提醒一下:很多时候连接不上sql server,最常见的原因是没有开启服务^_^)

     开启服务后再连接,还是失败。突然又意识到:好像没有允许远程连接,于是打开“外围应用配置器”—“服务和连接的外围应用配置器”—“DATABASE ENGINE”—“远程连接”,选择了"同时使用TCP/IP和named pipes",确定,重启服务,在连接,还是失败...

     以往连接不上sqlserver,来到这步都可以解决了,但是现在是什么问题呢?难道 192.168.1.182不是我自己的IP?马上"cmd"-"ipconfig",发现自己IP正是192.168.1.182,然后打开“SQL SERVER Configuration Manager”—"SQL SERVER 2005的网络配置"—“DAOYONG的协议”(DAOYONG是我SQLSERVER实例名称),右击“TCP/IP”协议,选择“属性”,并进入“IP地址”tab,检查有没有问题。

      发现没有填写IP,于是把IP1一栏填写起来,并在“已启用”一栏选“是”,顺便将IP2的“已启用”选择“否”,确定,重启服务。重新连接的时候还是连接不上!!烦呐,于是上网google了一下,有的人说是要打补丁,我用windows验证连接进入,运行了一下"select @@version",得出的版本是9.0.xxx,跟网上描述的要打补丁的情况有很大不同,应该不是补丁引起的问题。无意中开到一个网友说把防火墙关掉!我恍然大悟:防火墙屏蔽了1433端口!! 于是关掉了防火墙。但意外的是,还是连接不上。

    说到端口,我想:是不是端口有问题?于是"cmd"—“netstat -a -n ”查看一下,但竟然没有发现有监听1433端口,怪不得连接不上。但是为什么没有监听到1433端口呢?我明明在IP1里面设置了TCP端口为1433,这是经过一轮google,又看到一个网友提到:把IPALL设置成1433。于是照办,竟然行了!!很奇怪,于是又google了一下,找到的答案是:http://support.microsoft.com/kb/265808,大概意思就是:,如果在“TCP/IP属性”中的“协议”中将“全部侦听”选择为"是",则可以为所有TCP/IP连接指定默认的端口(端口号为“IPALL”栏中的端口号),如果“全部侦听”选择为"否"则可为不同IP独立设置端口号。

 

 

总结:

SQL SERVER出现无法连接(或无法通过IP进行连接),多数是一下几种原因:

1.服务没有开放

2.防火墙屏蔽了端口(通常是1433端口)

3.没有允许远程访问。在外配应用配置器中设置“允许远程访问”

4.TCP/IP协议中,基于TCP/IP远程连接的IP选项设置不正确(通常是填错IP,或者填对但没有启用)

5.(如我现在碰到的问题)选择了”全部侦听“,但没有设置到"IPALL"的TCP端口号。

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值