【问题标题】:SSRS subscription stuck in running stateSSRS 订阅卡在运行状态
【发布时间】:2021-04-11 22:10:18
【问题描述】:

我在 SSRS 中订阅了将报告保存到 Windows 文件共享的订阅。

当我手动运行此订阅时,结果卡在运行状态。虽然,当尝试在没有订阅的情况下创建报告时,它在 windows 文件共享目录中成功地做到了。

我尝试查看文件夹权限,但这不是问题。

背景

SSRS 是一个单独的独立服务器,与另一个 SQL Server 交互。 SQL 和 SSRS 都位于不同的远程服务器上。

连接不会成为问题,因为在没有订阅的情况下生成报告(这也排除了任何权限问题)

【问题讨论】:

    标签: sql-server reporting-services ssms ssrs-2012 windows-server-2008


    【解决方案1】:

    好的,这是 SQL Server 端的一些错误,运行以下查询效果很好。

    PS:欢迎任何能解释为什么这些方法有效的人

    首先在 SSMS 中运行以下查询(在 SSMS 中按 Ctrl + N 以运行新查询)

    USE master
    GO
    GRANT EXECUTE ON master.dbo.xp_sqlagent_notify TO RSExecRole
    GO
    GRANT EXECUTE ON master.dbo.xp_sqlagent_enum_jobs TO RSExecRole
    GO
    GRANT EXECUTE ON master.dbo.xp_sqlagent_is_starting TO RSExecRole
    GO
    

    然后,运行以下查询

    USE msdb
    GO
    GRANT EXECUTE ON msdb.dbo.sp_help_category TO RSExecRole
    GO
    GRANT EXECUTE ON msdb.dbo.sp_add_category TO RSExecRole
    GO
    GRANT EXECUTE ON msdb.dbo.sp_add_job TO RSExecRole
    GO
    GRANT EXECUTE ON msdb.dbo.sp_add_jobserver TO RSExecRole
    GO
    GRANT EXECUTE ON msdb.dbo.sp_add_jobstep TO RSExecRole
    GO
    GRANT EXECUTE ON msdb.dbo.sp_add_jobschedule TO RSExecRole
    GO
    GRANT EXECUTE ON msdb.dbo.sp_help_job TO RSExecRole
    GO
    GRANT EXECUTE ON msdb.dbo.sp_delete_job TO RSExecRole
    GO
    GRANT EXECUTE ON msdb.dbo.sp_help_jobschedule TO RSExecRole
    GO
    GRANT EXECUTE ON msdb.dbo.sp_verify_job_identifiers TO RSExecRole
    GO
    GRANT SELECT ON msdb.dbo.sysjobs TO RSExecRole
    GO
    GRANT SELECT ON msdb.dbo.syscategories TO RSExecRole
    GO
    

    然后禁用和启用订阅或创建新订阅并运行它。这应该可行!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-24
      • 2015-03-28
      • 1970-01-01
      • 2011-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多