关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » SQL Server »SQL Server管理器无法连接远程数据库的解决

    SQL Server管理器无法连接远程数据库的解决

    2010-11-23 10:17:00 出处:ITJS
    分享

    许多初学者在使用SQL Server时都会遇到使用SQL Server Management Studio无法连接远程数据库实例的问题,大致的错误描述如下:

    An error has occurred while establishing a connection to the server.

    (provider: Named Pipes Provider, error: 40 – Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 5)

    An error has occurred while establishing a connection to the server.  When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 – Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 1326)

    意思是说不能在数据库之间建立一个连接,原因是命名管道提供者出现错误。其实这是一个比较典型的数据库服务器设置问题,在局域网或广域网中都可能会遇到,我们只需要对数据库服务器进行一些配置便可以解决这个问题,来看看具体的步骤。

    确保服务器端数据库服务已经启动

    开始->所有程序->Microsoft SQL Server 2008->Configutation Tools,打开SQL Server Configuration Manager,点击SQL Server Services,查看数据库服务是否已经启动,假如服务未开启,手动启动它。当然,你还可以通过点击Windows中的开始->控制面板->管理者工具->服务,来查看相应的数据库服务是否启动。或者假如服务器和你的机器在同一网络,你还可以通过命令“sqlcmd -L”(注意L要大写)去查看该网络内所有可用的SQL Server服务器。

     

    在SQL Server Configuration中启用TCP/IP

    多个SQL Server服务器之间通过网络相互通信是需要TCP/IP支持的,为使SQL Server服务器能被远程连接必须确保TCP/IP已经启用。按照前面介绍的步骤打开SQL Server Configuration Manager,然后打开SQL Server Network Configuration,选择你要设置的数据库,然后点击TCP/IP,右键启用。假如有必要,你还可以启用Named Pipes。记住,所有的修改都必须在重启SQL Server服务之后才能生效!

    在Windows防火墙中打开SQL Server的端口号

    很多时候我们在对数据库服务器本身做了很多次设置后仍然无法成功建立远程连接,这时就要考虑是否是防火墙在作怪。默认情况下,许多端口号和服务都会被防火墙所禁止而不能远程访问或执行,SQL Server默认的端口号也不例外。我们应该重新设置Windows防火墙给SQL Server添加例外。除非人为修改,默认情况下SQL Server的端口号是1433,将该端口号添加到Windows防火墙中。假如SQL Server存在命名实例,那么也应该将SQL Server browser添加到Windows防火墙中。(有关SQL Server的命名实例将在后面介绍)

    打开Windows控制面板,选择Windows防火墙->Change Settings->Exceptions->Add Port

    点击Add port...在弹出的对话框中填入:

    Name: SQL

    Port Number: 1433

    Protocol: Select TCP

    在SQL Server管理器中启用远程连接

    这一步通常会被数据库管理员忽略,假如未启用数据库远程连接,数据库实例只允许在本地进行连接而不能被远程连接,启用远程连接同样非常重要。默认设置中远程连接是被禁止的。如下图,打开SQL Server Management Studio,右键点击数据库实例然后选择属性菜单。

    在打开的窗口中,左侧选择Connections,然后勾选"Allow remote connections to this server"。

    启用SQL Server Browser服务

    假如SQL Server在安装时不是用的默认实例名而是自定义的实例名,并且没有配置特定的TCP/IP端口号,那么按照我们前面的描述SQL Server仍然不能支持远程连接。但假如你启用的SQL Server Browser服务,便可以通过动态TCP/IP端口号进行远程SQL Server连接。启用SQL Server Browser服务非常简单,与启用SQL Server类似,在SQL Server Configuration Manager中右键点击SQL Server Browser,然后选择启用。启用该服务将会影响到服务器上所有已安装的SQL Server实例。

    在防火墙中为sqlbrowser.exe应用程序创建例外

    我们在过去不久的文章里已经提到了,自定义命名的SQL Server实例要支持远程连接需要启用sqlbrowser服务,Windows防火墙可能会阻止该服务执行。因此,我们必须在Windows防火墙中给sqlbrowser服务添加例外。

    首先找到服务器上安装sqlbrowser.exe程序的路径,如C:Program FilesMicrosoft SQL Server90Sharedsqlbrowser.exe。假如不确定SQL Server安装在什么地方,你可以在Windows搜索一下文件名。与我们在过去不久的文章里介绍的在防火墙中添加SQL TCP/IP端口号的方法类似,给sqlbrowser.exe应用程序添加防火墙例外。

    重新创建数据库别名

    创建SQL Server别名并在应用程序中使用它很常见。使用数据库别名可以确保一旦数据库的位置发生了变化,如更换了新的服务器,IP地址发生了变化等,应用程序中的数据库连接字符串不用修改。否则你更换了数据库的位置,你还要通知所有使用该数据库的应用程序修改源代码或配置文件中的连接字符串,这恐怕是不可能的。所以,使用数据库别名来配置连接字符串是一个非常明智的选择。另外,你还可以使用相同的别名来指向不同的数据库实例,当修改别名参数时,可以马上实现数据库之间的切换。创建数据库别名非常简单,在SQL Server Configuration Manager中选择Aliases进行创建。

    原文链接:http://www.cnblogs.com/jaxu/archive/2010/11/23/1884411.html

    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    hiberfil.sys文件可以删除吗?了解该文件并手把手教你删除C盘的hiberfil.sys文件

    Window 10和 Windows 11哪个好?答案是:看你自己的需求

    盗版软件成公司里的“隐形炸弹”?老板们的“法务噩梦” 有救了!

    帝国CMS7.5编辑器上传图片取消宽高的三种方法

    帝国cms如何自动生成缩略图的实现方法

    Windows 12即将到来,将彻底改变人机交互

    帝国CMS 7.5忘记登陆账号密码怎么办?可以phpmyadmin中重置管理员密码

    帝国CMS 7.5 后台编辑器换行,修改回车键br换行为p标签

    Windows 11 版本与 Windows 10比较,新功能一览

    Windows 11激活产品密钥收集及专业版激活方法

    IT头条

    智能手机市场风云:iPhone领跑销量榜,华为缺席引争议

    15:43

    大数据算法和“老师傅”经验叠加 智慧化收储粮食尽显“科技范”

    15:17

    严重缩水!NVIDIA将推中国特供RTX 5090 DD:只剩24GB显存

    00:17

    无线路由大厂 TP-Link突然大裁员:补偿N+3

    02:39

    Meta 千万美金招募AI高级人才

    00:22

    技术热点

    微软已修复windows 7/windows 8.1媒体中心严重漏洞 用户可下载安

    卸载MySQL数据库,用rpm如何实现

    windows 7中使用网上银行或支付宝支付时总是打不开支付页面

    一致性哈希算法原理设计

    MySQL数字类型中的三种常用种类

    如何解决SQL Server中传入select语句in范围参数

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。