阿恭喜您获得万维景盛为您分享的阿里云服务器9折优惠码:TZ2DHZ ,新用户首购在结算时输入此推荐码即可打折。
如希望获得更低阿里云服务器折扣及续费长期折扣,请联系客服010-57180806 QQ 442956988
购买的西部数码VPS服务器主机属于共享ip的,在创建MSSQL数据库以后,发现本地登录模式可以进入sql server management studio数据库企业管理器,但使用用户名密码windows身份验证模式则不能登录。
提示:
在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: TCP 提供程序, error: 0 - 由于目标机器积极拒绝,无法连接。)
如果您使用的VPS是属于共享ip的,这种需要将服务器内部使用的1433使用端口映射到外网.
这个可以登陆我司官网后台或控制面板--业务管理--独立IP主机管理--找到您的服务器主机后边点击管理--主机参数下方有个端口映射添加.然后在使用外部端口进行连接测试,问题即可解决!
例如
那么访问时,就是使用220.166.x.x,52704这样的ip与端口组合来访问数据库。注意,ip与端口之间要使用英文逗号分隔。
这里的ip是远程桌面访问用的那个ip,也是FTP上传地址用的ip,不是共享公网地址。
其他类似问题的解决方法:
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和命名管道服务即可解决。
在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错)
解决方法:开始->>SQLServer2005->>配置工具->>SQLServer外围应用配置器->>
服务和外围连接的应用配置器->>点击"远程连接"->>本地连接和远程连接->>
同时使用TCP/IP和named Pipes->>点"确定"->>重启SQLserver服务
可是我的电脑改不了,SQLServer外围应用配置器报
错误信息:更改失败。(Microsoft.SqlServer.Smo) 其它信息: SetEnable对于ServerProtocol“Tcp”失败。(Microsoft.SqlServer.Smo)
我找到了一个解决的办法。我的操作系统也是win7:
点击SQL Server Configuration Manager中Sql Server 2005网络配置“MSSQLSERVER”协议,启动协议“TCP/IP”以及"Name Pipes"。并且停止,重新启动SQL Server服务。
便可以了。