当前位置: 首页 > news >正文

SQL Server Integration Services (SSIS) 服务无法启动

问题现象
安装 SQL Server 2022 后,SQL Server Integration Services (SSIS) 服务无法启动,日志报错 “服务无法响应控制请求”(错误代码 1067)或 “依赖服务不存在或已标记为删除”


快速诊断
  1. 检查服务状态与依赖项

    # 查看 SSIS 服务状态及依赖服务
    Get-Service -Name "SSISScaleOutMaster140","SSISScaleOutWorker140" | 
      Select-Object Name, Status, DependentServices
    • 关键依赖服务

      • Windows Event Log

      • Remote Procedure Call (RPC)

  2. 验证安装完整性

    # 检查 SSIS 组件是否已安装
    Get-WmiObject -Query "SELECT * FROM Win32_Product WHERE Name LIKE '%Integration Services%'"
  3. 排查端口冲突

    # 检查默认端口 8391(主节点)和 8392(工作节点)是否被占用
    netstat -ano | findstr ":8391\|:8392"

解决方案
步骤 1:修复或重新安装 SSIS 组件
  1. 通过安装中心修复

    • 运行 SQL Server 安装中心,选择 维护 > 修复,勾选 Integration Services

  2. 命令行静默修复

    setup.exe /ACTION=REPAIR /FEATURES=IS /INSTANCENAME=SSIS /Q
步骤 2:配置服务启动账户与权限
  1. 设置服务账户

    • 打开 服务管理器,找到 SQL Server Integration Services 16.0

    • 右键选择 属性 > 登录,指定具有管理员权限的域账户(如 DOMAIN\SSIS_Service)。

  2. 授予文件系统权限

    # 授予服务账户对 SSIS 目录的完全控制权限
    icacls "C:\Program Files\Microsoft SQL Server\160\DTS" /grant "DOMAIN\SSIS_Service:(OI)(CI)F"
步骤 3:修复依赖服务配置
  1. 重置 Windows Event Log 服务

    sc config EventLog start= auto
    Start-Service EventLog
  2. 重建 RPC 依赖项

    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\SSISScaleOutMaster140" -Name "DependOnService" -Value "RpcSs"
    Restart-Service SSISScaleOutMaster140 -Force

验证与日志分析
  1. 测试服务启动

    Start-Service SSISScaleOutMaster140
    Get-Service SSISScaleOutMaster140 | Select-Object Status
  2. 检查 SSIS 日志

    • 主节点日志

      C:\Program Files\Microsoft SQL Server\160\DTS\Binn\Master.log
    • 工作节点日志

      C:\Program Files\Microsoft SQL Server\160\DTS\Binn\Worker.log
    • 搜索关键词 Failed to initialize components 或 Port conflict

  3. 验证 SSIS 包执行

    # 使用 dtutil 工具测试包加载
    dtutil /FILE "C:\SSIS\TestPackage.dtsx" /CHECKEXIST

扩展场景:分布式 Scale-Out 配置问题
  • 错误示例The Scale Out Master service cannot connect to the SQL Server instance

  • 解决方案

    1. 配置数据库连接字符串

      <!-- 修改 Master.dtsx 配置文件 -->
      <configuration>
        <SqlServerInstance>SQLServerName</SqlServerInstance>
        <CatalogDatabase>SSISDB</CatalogDatabase>
      </configuration>
    2. 启用混合身份验证

      ALTER LOGIN [DOMAIN\SSIS_Service] WITH PASSWORD = 'SecureP@ss!';
      ALTER DATABASE SSISDB SET TRUSTWORTHY ON;

安全加固建议
  1. 限制防火墙规则

    # 仅允许可信 IP 访问 Scale-Out 端口
    New-NetFirewallRule -DisplayName "SSIS-ScaleOut" -Direction Inbound -Protocol TCP -LocalPort 8391-8392 -RemoteAddress 192.168.1.0/24 -Action Allow
  2. 启用加密通信

    Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\160\SSIS" -Name "EncryptScaleOutCommunication" -Value 1


通过以上步骤,可解决大部分 SSIS 服务启动失败问题。若为集群环境,需确保所有节点同步配置,并验证负载均衡策略。生产环境中建议定期备份 SSIS 目录 (C:\Program Files\Microsoft SQL Server\160\DTS) 并监控服务健康状态。

关于作者:

15年互联网开发、带过10-20人的团队,多次帮助公司从0到1完成项目开发,在TX等大厂都工作过。当下为退役状态,写此篇文章属个人爱好。本人开发期间收集了很多开发课程等资料,需要可联系我

 

http://www.dtcms.com/a/108740.html

相关文章:

  • I2C 读写 AT24C02
  • Genspark:重新定义搜索体验的AI智能体引擎
  • 循环结构- P1217-回文质数-第三十四天
  • 理解 Cookies:工作原理、类型与隐私安全指南
  • Spring 核心技术解析【纯干货版】- XIX:Spring 日志模块 Spring-Jcl 模块精讲
  • SQL Server:Log Shipping 说明
  • 位运算与集合
  • easyPan技术回顾day4
  • 【蓝桥杯刷题实战】路径之谜
  • APang网联科技项目报告【服务器篇】
  • Shell脚本中的日期变量详解
  • 理解Kotlin高阶函数:传递函数,而不是直接执行
  • 【C++11】异步编程
  • AI agent推理自私属性是否成为社会演化中的生存优势
  • 前端基础之《Vue(1)—简介》
  • 安装 AWS CLI
  • 在汇编层面理解MESI
  • win32汇编环境,网络编程入门之十八
  • 基于CNN-LSTM的深度Q网络(Deep Q-Network,DQN)求解移动机器人路径规划,MATLAB代码
  • RT-Thread 和 FreeRTOS 嵌入式实时操作系统对比
  • 嵌入式学习笔记——ARM
  • 科普:One-Class SVM和SVDD
  • 机器学习的一百个概念(9)学习曲线
  • RK3568下截屏工具weston-screenshooter
  • Oracle数据库数据编程SQL<6.3 获取用户、表名、表中文描述、列名、列中文描述、主键标识等完整信息>
  • 【愚公系列】《高效使用DeepSeek》050-外汇交易辅助
  • 使用typescript实现游戏中的JPS跳点寻路算法
  • C++20 的新工具:std::midpoint 和 std::lerp
  • Keil中关闭宏定义提示方法
  • 【JavaEE进阶】Spring AOP入门