热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

轻松掌握使用SQLServer浏览器

SQLServerBrowser作为Windows服务在服务器上运行。SQLServerBrowser侦听对SQLServer资源的传入请求,并提供计算机上安装的SQLServer实例的相关信息。SQLServerBrowser可用于执行下列三种操作:浏览可用服务器连接到正确的服务器实例连接

SQL Server Browser 作为 Windows 服务在服务器上运行。SQL Server Browser 侦听对 SQL Server 资源的传入请求,并提供计算机上安装的 SQL Server 实例的相关信息。SQL Server Browser 可用于执行下列三种操作: 浏览可用服务器 连接到正确的服务器实例 连接

  SQL Server Browser 作为 Windows 服务在服务器上运行。SQL Server Browser 侦听对 SQL Server 资源的传入请求,并提供计算机上安装的 SQL Server 实例的相关信息。SQL Server Browser 可用于执行下列三种操作:

  1.   浏览可用服务器
  2.   连接到正确的服务器实例
  3.   连接到专用管理员连接 (DAC) 端点

  SQL Server Browser 服务 (sqlbrowser) 为数据库引擎的每个实例提供实例名称和版本号。SQL Server Browser 随 SQL Server 2005 一起安装,为该计算机上运行的早期版本的 SQL Server(从 SQL Server 7.0 开始)提供帮助。

  默认情况下,不为 SQL Server Express 启用 SQL Server Browser 服务。SQL Server Browser 可以使用外围应用配置器工具进行初始配置,并使用 SQL Server 配置管理器进行管理。

  背景

  在 SQL Server 2000 之前,一台计算机上只能安装一个 SQL Server 实例。SQL Server 侦听 1433 端口传入的请求,此端口由官方的 Internet 号码分配机构 (IANA) 分配给 SQL Server。只有一个 SQL Server 实例可以使用端口,因此当 SQL Server 2000 引入对 SQL Server 多个实例的支持时,便开发了 SQL Server 解析协议 (SSRP),用于侦听 1434 端口。此侦听器服务用已安装的实例的名称以及实例使用的端口或命名管道来响应客户端请求。为解决 SSRP 系统的限制,SQL Server 2005 提供了 SQL Server Browser 服务来替代 SSRP。

  SQL Server 浏览器工作原理

  启动一个 SQL Server 实例后,如果为 SQL Server 启用了 TCP/IP 或 VIA 协议,服务器将被分配一个 TCP/IP 端口。如果启用了命名管道协议,SQL Server 将侦听特定的命名管道。该特定实例将使用此端口或管道与客户端应用程序交换数据。在安装过程中,1433 端口和管道 \sql\query 将分配给默认实例,但服务器管理员可以随后使用 SQL Server 配置管理器进行更改。由于只有一个 SQL Server 实例可以使用端口或管道,因此,会将不同的端口号和管道名称分配给命名实例,包括 SQL Server Express。默认情况下,命名实例被配置为使用动态端口,因此在启动 SQL Server 时分配可用的端口。可以为 SQL Server 实例分配特定端口。连接时,客户端可以指定所需端口。但是如果端口是动态分配的,端口号可能会在重新启动 SQL Server 时被更改,因此正确的端口号对于客户端来说是不确定的。

  启动后,SQL Server Browser 将启动并使用 UDP 1434 端口。SQL Server Browser 将读取注册表,识别计算机上的所有 SQL Server 实例,并注明它们使用的端口和命名管道。当一台服务器具有两个或多个网卡时,SQL Server Browser 会为 SQL Server 返回启用的所有端口。SQL Server 2005 和 SQL Server Browser 支持 ipv6 和 ipv4。

  如果 SQL Server 2000 和 SQL Server 2005 客户端请求 SQL Server 资源,客户端网络库将使用 1434 端口向服务器发送一条 UDP 消息。SQL Server Browser 将用请求的实例的 TCP/IP 端口或命名管道做出响应。然后,客户端应用程序中的网络库将使用所需实例的端口或命名管道向服务器发送请求来完成连接。

  使用 SQL Server 浏览器

  当 SQL Server Browser 服务不运行时,如果您提供了正确的端口号或命名管道,仍可以连接到 SQL Server。例如,如果 SQL Server 的默认实例在 1433 端口上运行,则可以使用 TCP/IP 连接到此默认实例。

  无法进行以下连接:

  在未完全指定所有参数(例如 TCP/IP 端口或命名管道)的情况下,组件尝试连接到命名实例。

  生成或传递其他组件随后要用来进行重新连接的服务器或实例信息的组件。

  未提供端口号或管道就连接到命名实例。这包括对命名实例的数据镜像和聚集命名实例。

  到命名实例或默认实例(如果未使用 TCP/IP 1434 端口)的专用管理员连接。

  OLAP 重定向程序服务。

  枚举 SQL Server Management Studio、企业管理器或查询分析器中的服务器。

  如果在客户端服务器方案中使用 SQL Server(例如,应用程序通过网络访问 SQL Server),那么,若要停止或禁用 SQL Server Browser 服务,必须为每个实例分配一个特定端口号,并编写客户端应用程序代码以便始终使用该端口号。此方法存在如下问题:

  必须更新和维护客户端应用程序代码才能确保它连接到正确的端口。

  如果服务器上的其他服务或应用程序可以使用您为每个实例选择的端口,则会导致 SQL Server 实例不可用。

  并行安装 SQL Server 2000

  在 SQL Server 2000 中,通过 SQL Server 服务识别服务器连接端点。在 SQL Server 2005 中,该功能是通过 SQL Server Browser 服务实现的。如果在还运行 SQL Server 2000 或 MSDE 的计算机上安装 SQL Server,则必须将它们升级到 SP3 或更高版本。SP3 之前的版本无法正确共享 1434 端口,并且可能会使 SQL Server 实例不能用于请求客户端应用程序。尽管可以通过更改启动顺序,使 SQL Server Browser 服务在 SQL Server 2000 或 MSDE 之前启动,但建议您将所有较旧版本的 SQL Server 更新为最新的 Service Pack。

  在计算机中装有 SQL Server 2000 实例的情况下,如果 SQL Server Browser 未运行,将启动 SQL Server 2000 侦听器服务。如果 SQL Server Browser 在侦听器服务启动之后启动,将用 5 秒钟来等待 SQL Server 2000 放弃 1434 端口。如果未放弃该端口,SQL Server Browser 将无法启动。对于 SP3 之前的 SQL Server 2000 版本,若要解决此问题,需要停止 SQL Server 2000,启动 SQL Server Browser,然后重新启动 SQL Server 2000。SQL Server 2000 侦听器服务将继续尝试使用 1434 端口进行启动,因此应尽快将 SQL Server 2000 实例升级到 SP3。

  SQL Server 7.0 与 SQL Server Browser 没有冲突。

  通过命令行进行安装、卸载和运行

  默认情况下,SQL Server Browser 程序安装在 C:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe 处。如果 SQL Server 2000 已安装在计算机上,但尚未升级到 SP 3,而且 SQL Server 2000 实例也未进行升级,则应在安装 SQL Server 2005 期间停止 SQL Server 2000。如果 SQL Server 2000 正在运行,SQL Server Browser 将无法启动,也无法使用 1434 端口,而安装可能会因缺少连接而失败。

  SQL Server Browser 服务在删除 SQL Server 2005 的最后一个实例后被卸载。SQL Server 2000 的实例将恢复其原始行为。

  可以使用 -c 开关,从命令行启动 SQL Server Browser 来排除故障。

推荐阅读
  • 本文详细介绍了如何设置局域网,并确保网络中的所有计算机能够相互访问和共享安装的软件。包括物理连接检查、TCP/IP设置、网络协议配置等多个方面。 ... [详细]
  • Git管理工具SourceTree安装与使用指南
    本文详细介绍了Git管理工具SourceTree的安装、配置及团队协作方案,旨在帮助开发者更高效地进行版本控制和项目管理。 ... [详细]
  • 云计算的优势与应用场景
    本文详细探讨了云计算为企业和个人带来的多种优势,包括成本节约、安全性提升、灵活性增强等。同时介绍了云计算的五大核心特点,并结合实际案例进行分析。 ... [详细]
  • 如何将本地Docker镜像推送到阿里云容器镜像服务
    本文详细介绍将本地Docker镜像上传至阿里云容器镜像服务的步骤,包括登录、查看镜像列表、推送镜像以及确认上传结果。通过本文,您将掌握如何高效地管理Docker镜像并将其存储在阿里云的镜像仓库中。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • Windows 7 64位系统下Redis的安装与PHP Redis扩展配置
    本文详细介绍了在Windows 7 64位操作系统中安装Redis以及配置PHP Redis扩展的方法,包括下载、安装和基本使用步骤。适合对Redis和PHP集成感兴趣的开发人员参考。 ... [详细]
  • 本文详细介绍了如何在不同操作系统和设备上设置和配置网络连接的IP地址,涵盖静态和动态IP地址的设置方法。同时,提供了关于路由器和机顶盒等设备的IP配置指南。 ... [详细]
  • 本文介绍了解决在Windows操作系统或SQL Server Management Studio (SSMS) 中遇到的“microsoft.ACE.oledb.12.0”提供程序未注册问题的方法,特别针对Access Database Engine组件的安装。 ... [详细]
  • PostgreSQL 最新动态 —— 2022年4月6日
    了解 PostgreSQL 社区的最新进展和技术分享 ... [详细]
  • TCP/IP基础知识详解
    本文详细介绍了TCP/IP协议的基本概念,包括网络层次模型、TCP三次握手过程、四次挥手过程以及TCP与UDP的比较。通过这些内容,读者可以更好地理解TCP/IP协议的工作原理。 ... [详细]
  • 解析EasyCVR平台国标GB28181协议下的TCP与UDP模式
    在使用EasyCVR视频融合平台过程中,用户常遇到关于端口设置的问题,尤其是TCP和UDP模式的区别。本文将详细介绍这两种模式在GB28181协议下的具体应用及差异。 ... [详细]
  • 一面问题:MySQLRedisKafka线程算法mysql知道哪些存储引擎,它们的区别mysql索引在什么情况下会失效mysql在项目中的优化场景&# ... [详细]
  • 本文详细探讨了虚拟化的基本概念,包括服务器虚拟化、网络虚拟化及其在云计算环境中的应用。特别强调了SDN技术在网络虚拟化和云计算中的关键作用,以及网络虚拟化技术如何提升资源利用效率和管理灵活性。 ... [详细]
  • 本文深入探讨了网络编程中的基本概念,如指针、引用和可重入函数,并详细介绍了OSI七层模型和TCP/IP四层模型的功能与协议。同时,文章还对比了HTTP与HTTPS的区别,分析了HTTP请求报文的结构,讨论了TCP与UDP的主要差异,以及滑动窗口协议的工作原理。 ... [详细]
  • 本文详细记录了作者从7月份的提前批到9、10月份正式批的秋招经历,包括各公司的面试流程、技术问题及HR面的常见问题。通过这次秋招,作者深刻体会到了技术积累和面试准备的重要性。 ... [详细]
author-avatar
阿芙2011
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有