现在的位置: 首页 > 综合 > 正文

不允许进行远程连接可能会导致此失败 error: 40

2012年11月01日 ⁄ 综合 ⁄ 共 3689字 ⁄ 字号 评论关闭
Port number for SQL Server 2005 is not 1433.
To obtain the <port>, select SQL Server 2005 Network Configuration>Protocols for SQLEXPRESS in SQL Server Configuration Manager. Right-click on TCP/IP node and select Properties.
In the TCP/IP Properties tab, select the IP Addresses tab. In IP ALL section, the TCP Dynamic Ports specifies the <port> value

--------------------------------------------------------------
汉语版的SqlServer是:程序-〉Microsoft Sql Server 2005-〉配置工具-〉Sql Server Configuration Manager 然后:Right-click on TCP/IP node and select Properties,In the TCP/IP Properties tab, select the IP Addresses tab. In IP ALL section, the TCP Dynamic Ports specifies the <port> value

--------------------------------------------------------------
SQL Server2005的默认端口不是1433。在SQL Server配置管理器中选择SQL Server2005网络配置,选择你的数据库的协议,右键单击TCP/IP协议,然后选择属性,在IP地址
(In IP ALL section)中,将动态端口改为1433,重启服务器即可。
----------事实是重起Sql Server Configuaration Manager 中的 (sql server 2005 服务)右键-〉打开
中的Sql Server(liufei)右键-〉停止(启动)即可
来源:
http://forum.java.sun.com/thread.jspa?threadID=733664
我的机器当时端口是1258
IP1 section & IP2 section 活动选“是” 已启用 选“否”是对的!
IPALL section TCP 动态端口填1433 TCP端口空白不填

********************************************************************************

事实上关于SQL Server 2005的远程连接问题,
在MSDN上就有很详细的解答,SQL Server 2005的联机文档上也有相关的内容,
总结起来就是以下几个要点:
1、打开SQL Server 2005的TCP/IP连接.
2、在装有防火墙的主机上,需要开放连接所需的端口,只有一个实例的主机上,默认是TCP1433端口.
3、客户端在连接时,需要指定连接的端口号,例如1433,否则,就需要启用SQL Server Browser服务,并开放防火墙的UDP1434端口。
4、启动SQL Server Brower服务后,会接受未经验证的请求,从而带来安全隐患,所以应该使SQL Server Browser服务由较低权限的用户来启动。
关于原理,可以参考MSDN的资料,自己查吧.
来源:网上
*********************************************************

Sql Server连接的端口问题

昨天遇到一个比较奇怪的问题,机器A、机器B,都装有Sql Server2000C#程序从AB上的数据库OK,但是从BA的数据库总是有异常,异常提示“在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败”。

由于AB上都装有VS2005,带着装了Sql Server2005Express,当时便怀疑是Sql Server2005在搞鬼,拿异常信息上网搜了一下,按照网上的解决方法一步步配置了Sql Server2005,结果问题并没有解决。

后来发现这些异常信息有时候也会误导人,实际的问题跟Sql Server2005Express并没有关系,而是出在Sql Server2000的端口设置上,因为A机器上的数据库端口不是默认的1433,导致程序连接不上。

关于Sql Server2000远程连接,也找到了一篇文章,整理一下,以后可以按下面的步骤处理:

1)看Ping 服务器IP能否能通。这个实际上是看和远程Sql Server 2000服务器的物理连接是否存在。如果不行,请检查网络,查看配置,当然得确保远程Sql Server 2000服务器的IP拼写正确。

2 Dos或命令行下输入Telnet 服务器IP端口,看能否连通。如Telnet 202.114.100.100 14331433Sql Server 2000的对于Tcp/IP的默认侦听端口。如果这一步有问题,应该检查以下选项:

1)检查远程服务器是否启动了Sql Server 2000服务。如果没有,则启动。

2)检查服务器端有没启用Tcp/IP协议,因为远程连接(通过因特网)需要靠这个协议。检查方法是,在服务器上打开 开始菜单->程序->Microsoft SQL Server->服务器网络实用工具,看启用的协议里是否有Tcp/IP协议,如果没有,则启用它。

3)检查服务器的Tcp/IP端口是否配置为1433端口。仍然在服务器网络实用工具里查看启用协议里面的Tcp/IP的属性,确保默认端口为1433,并且隐藏服务器复选框没有勾上。

事实上,如果默认端口被修改,也是可以的,但是在客户端做Telnet测试时,写服务器端口号时必须与服务器配置的端口号保持一致。如果隐藏服务器复选框被勾选,则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接,但是Tcp/IP协议的默认端口将被隐式修改为2433,在客户端连接时必须作相应的改变。

(如果端口不是1433,则在程序中设置连接字符串时,应类似“server=192.168.6.10,2433;database=….”)

4)如果服务器端操作系统打过sp2补丁,则要对windows防火墙作一定的配置,要对它开放1433端口,通常在测试时可以直接关掉windows防火墙(其他的防火墙也关掉最好)

5)检查服务器是否在1433端口侦听。如果服务器没有在Tcp连接的1433端口侦听,则是连接不上的。检查方法是在服务器的dos或命令行下面输入:netstat -a -n 或者是netstat -an,在结果列表里看是否有类似 tcp 127.0.0.1 1433 listening 的项。如果没有,则通常需要给Sql Server 2000打上至少sp3的补丁。

===================================================================

个人培训 针对新手朋友的windows下的.net 开发数据库用Oracle9i,

.NET Framework2.0 下的开发,一对一培训,一个老师对一个学生,保证质量。

该培训,旨在帮助新接触.NET 开发的朋友,快速掌握一般性的技巧,对已经有相当丰富经验的高手则不适合。

详情请留言咨询

方向与内容:
1.  windows下C# + ASP.NET + Visual Studio 2005 数据库采用Sql Server 和 Oracle9i两种。

2.  SqlServer 和 Oracle9i之间的数据转换

3.  SqlServer 2005内的一些常用SP,Job Schedule

4.  Oracle9i 与SqlServer 2005的异同。

具体内容及收费请留言咨询,目前只面向人在上海市的朋友,因为方便面对面授课,保证质量。

不要看书了,看书可能花费较长的时间,我来告诉你书里写的是什么。
相当于我为你试药:
有好的药,有不好的药,
有好的书,有不好的书,
我试过了很多,我知道哪些是我们真正需要的。

我还有我的朋友都会竭力地帮助你,而你只需要付出一点点耐心和一点点米,就能得到你需要从汗牛充栋的书籍中寻找的东西。

这与在培训机构培训完全不同,也许在大规模的培训机构你能培训成世界一流的高手,但同时可能要付出一定的代价,我所知的培训费从最少的数千到数万不等,说实话,我承受不起,太贵了。

我现在的模式是,我用我自己的已有的通过自身努力获得的知识来帮助你,你付一点点米来帮助我,我再去更好的提高自身的水平来更好地帮助你。

这种互相的学习,是以次为单位的,每次数小时而已,所以费用绝对不会很贵,只及培训机构的百分之一甚至千分之一,当然学到的东西也有可能不及从培训机构学到的东西那么多

经济危机下的不得已举措,有意见的朋友,尽管拍砖头过来。

 

抱歉!评论已关闭.