一个路由下两台可以ping通ip的机子sql2005不能建立连接

前提:

  1、先保证ping通   
    
  2、在dos下写入telnet   ip   1433不会报错   
    
  3、用ip连如企业管理器:   
  企业管理器-->右键SQlserver组-->新建sqlserver注册-->下一步-->写入远程实例名(IP,机器名)-->下一步-->选Sqlserver登陆-->下一步-->写入登陆名与密码(sa,pass)-->下一步-->下一步-->完成   
    
  4、如果还不行:   
  sqlserver服务器-->开始菜单-->SQLserver-->服务器网络实用工具-->启用   WinSock代理-->代理地址:(sqlserver服务器IP)-->代理端口-->1433-->OK了   
    
  5、如果还不行:   
  sqlserver客户端-->开始菜单-->SQLserver-->客户端网络实用工具-->别名-->添加-->写入别名如"大力"-->"网络库"选tcp/ip-->服务器名称写入远程ip或实例名-->OK了 



在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: SQL 网络接口, error: 26- 定位指定的服务器/实例时出错) (.Net SqlClient Data Provider) 解决: 


步骤1:在SQLServer 实例上启用远程连接 

1.指向“开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 外围应用配置器”

2.在“SQL Server 2005 外围应用配置器”页, 单击“服务和连接的外围应用配置器” 
3.然后单击展开“数据库引擎”, 选中“远程连接”,在右边选中“本地连接和远程连接”, 再选择要使用的协议,( 这个地方应当启用TCP/IP 和命名管道服务!)单击“应用”,您会看到下消息: “直到重新启动数据库引擎服务后,对连接设置所做的更改才会生效。”,单击“确定”按钮返回

4.展开“数据库引擎”, 选中“服务”,在右边单击“停止”,等到 MSSQLSERVER 服务停止, 然后单击“启动”,重新启动MSSQLSERVER 服务。



步骤2:启用 SQLServer 浏览器服务 

1.指向“开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 外围应用配置器”

2.在“SQL Server 2005 外围应用配置器”页, 单击“服务和连接的外围应用配置器” 3.然后单击展开“SQL Server Browser”, 选中“服务”,在右边“启动类型”选择“自动”, 再单击“启动”,单击“确定”按钮返回 



步骤3:在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。 




步骤4:在Windows 防火墙中为“SQLBrowser”创建例外
1.在 Windows 防火墙设置界面中,选择“ 例外” 选项卡,然后单击“添加程序”
2.在“添加程序窗口”中单击“浏览”

3.然后找到“C:\ProgramFiles\Microsoft Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe”, 单击“确定”返回 注意 : 路径可能会根据 SQL Server 2005 安装不同而不同。



 问题2:现在可能会出现sa不能登陆的问题,解决办法如下: 用用Windows身份验证登陆,在"属性"窗口中, 转到"Security"(安全性)项, 在"服务器身份验证"中设置为"SQL Server和Windows身份验证模式", 确定, 根据提示, 你应该重新启动sql服务。 如果执行 EXEC sp_password null,null,'sa'ALTER LOGIN sa ENABLE 这句话时报如下的错: Msg 15118, Level16, State 1, Line 1 密码有效性验证失败。该密码不够复杂,不符合 Windows 策略要求。 则说明你的服务器的密码策略有复杂性要求(SQL 2005的密码复杂性与Windows的密码复杂性策略是关联的),则要求你把sa的密码设置为一个复杂的密码, 因此得改为如下语句: EXEC sp_password null, 'guoqiang1234', 'sa'ALTER LOGIN sa ENABLE -- sp_password 语法如下: -- sp_password [旧密码], <新密码>, [登录名]


问题3:IP地址不能连接 在使用.NET开发进行时,会遇到使用连接字符串连接SQL Server 2005数据库使用机器名称和localhost都能连接,但是使用IP地址却不能连接的问题, 解决的办法是在SQL Server实例上启用本地和远程连接,并且在选择协议的时候使用TCP/IP和命名管道服务即可解决。

你可能感兴趣的:(一个路由下两台可以ping通ip的机子sql2005不能建立连接)