SQL Server 安装后会在 Windows 系统中注册多个服务,每种服务负责不同的功能。主要服务类型包括:
📌 核心服务 (必须或常用)
SQL Server Database Engine (数据库引擎服务)
服务名称格式: MSSQL$
核心功能: 这是 SQL Server 的核心组件。
作用: 存储、处理和保护数据,执行 T-SQL 查询,管理数据库文件、事务、安全性等。
必要性: 必需。没有运行此服务,就无法访问数据库。
SQL Server Agent (SQL Server 代理服务)
服务名称格式: SQLSERVERAGENT$
核心功能: 自动化任务调度引擎。
作用: 创建和管理作业(定时运行 T-SQL 脚本、SSIS 包、命令提示符命令等)、计划任务、设置警报(响应事件或性能条件)、操作员通知(邮件、寻呼等)。
必要性: 强烈建议运行。对于自动化维护任务(备份、索引重建、数据清理)、作业调度至关重要。依赖 SQL Server Database Engine 服务。
🔧 可选组件服务 (按需安装和启动)
SQL Server Integration Services (SSIS - 集成服务)
服务名称: SSISDB 或 MsDtsServer
核心功能: 数据提取、转换和加载平台。
作用: 设计、部署和管理 ETL (Extract, Transform, Load) 包,用于数据仓库、数据迁移、数据清理等场景。
必要性: 需要执行或管理 SSIS 包时才需要。服务用于部署、运行、监控存储在 SSIS Catalog (SSISDB 数据库) 中的包。安装 SSIS 组件时会添加此服务。
SQL Server Reporting Services (SSRS - 报表服务)
服务名称: SQLServerReportingServices (自 2017 起) 或 ReportServer$
核心功能: 企业级报表创建、发布、管理和交付平台。
作用: 创建各种格式的报表(表格、矩阵、图表、地图等),通过 Web 门户访问、订阅(邮件等)、管理报表安全性。
必要性: 需要使用 SSRS 创建、发布或查看报表时才需要。
SQL Server Analysis Services (SSAS - 分析服务)
服务名称格式: MSOLAP$
核心功能: 联机分析处理和数据挖掘平台。
作用: 创建和管理多维数据模型(OLAP Cubes)或表格数据模型(内存中列存储引擎),支持复杂分析和快速查询海量数据。
必要性: 需要构建或查询 OLAP 多维数据集或表格模型(用于 Power BI, Excel 等前端工具)时才需要。
SQL Full-text Filter Daemon Launcher (全文搜索筛选器后台程序启动器)
服务名称: MSSQLFDLauncher$
核心功能: 支持全文搜索功能。
作用: 加载和管理执行文件内容筛选(从 Word, PDF 等文档中提取文本)的进程。SQL Server 全文搜索依赖此服务。
必要性: 需要使用 CONTAINS/FREETEXT 等谓词对存储在数据库中的文档(如文件流数据列的文档)进行全文索引和查询时才需要。
SQL Server Browser (SQL Server 浏览器服务)
服务名称: SQLBrowser。
核心功能: 提供命名实例的连接信息。
作用:
当客户端请求连接命名实例(非默认实例)但没有指定端口号时,向客户端提供该命名实例正在侦听的 TCP/IP 端口号或 Named Pipe 名称。
枚举服务器上的 SQL Server 实例(如在 SSMS 的"本地服务器组"中列出)。
必要性: 在以下情况下通常需要运行:
服务器上有多个命名实例(包括默认实例+命名实例)。
客户端连接时只指定了服务器名和实例名(未指定端口)。
使用 SSMS 浏览本地网络上的 SQL Server 实例列表。
对于仅有一个默认实例且客户端总是通过指定端口号(如 1433)连接的情况,可能不需要运行它。
💻 管理工具相关服务 (通常自动管理)
SQL Server Distributed Replay Client / Controller
服务名称: SQL Server Distributed Replay Client / SQL Server Distributed Replay Controller
核心功能: 压力测试工具组件。
作用: 用于在多台计算机上重播捕获的跟踪数据,模拟生产负载,测试 SQL Server 升级或应用程序更改前的性能。
必要性: 仅在进行分布式重放测试时需要专门启动。
📋 总结表
服务名称
作用领域
必要性
依赖关系
典型场景
SQL Server (MSSQLSERVER/$)
核心数据库引擎
必需
-
数据库存储、查询处理
SQL Server Agent
自动化调度
强烈推荐
数据库引擎实例
备份、作业、警报
SQL Server Integration Services (SSIS)
ETL/数据集成
可选
(SSIS Catalog 依赖数据库引擎)
数据仓库加载、数据迁移
SQL Server Reporting Services (SSRS)
报表
可选
-
企业报表创建、分发
SQL Server Analysis Services (SSAS)
分析/数据挖掘
可选
-
OLAP Cube、表格模型
SQL Full-text Filter Daemon Launcher
全文搜索
可选
数据库引擎实例
文档内容搜索
SQL Server Browser
实例发现/连接路由
视情况而定
-
多实例环境、浏览实例
Distributed Replay Client/Controller
性能测试
特殊用途
-
负载模拟测试
📖 如何查看和管理这些服务?
SQL Server 配置管理器: 管理 SQL Server 相关服务的最佳工具 (SQLServerManager
Windows 服务管理器 (services.msc): 通用服务管理界面,也能看到所有 SQL Server 服务。
命令提示符/ PowerShell: 使用 net start/net stop 或 sc 命令或 Start-Service/Stop-Service PowerShell cmdlet。
⚠ 注意事项
实例名称: 对于命名实例,服务名称中会包含实例名 ($
版本差异: 服务名称(尤其是 SSIS/SSRS/SSAS 的旧版命名)和功能细节可能因 SQL Server 版本(如 2016, 2017, 2019, 2022)略有不同。
Linux/macOS: 在 Linux 或 macOS Docker 容器上运行时,服务管理方式不同(通常使用 systemctl 或容器启动命令)。
最小化安装: 仅安装数据库引擎组件时,通常只会有 SQL Server (MSSQL...)、SQL Server Agent、SQL Full-text Filter Daemon Launcher 和可能需要的 SQL Server Browser。
选择启动哪些服务取决于实际应用需求。数据库引擎是基础,代理服务对运维自动化至关重要,其他服务则根据是否使用对应的功能组件来决定是否需要开启。