【问题标题】:How to display SQL Server 2008 (Server Dashboard Performance) on a ASP.Net Web page with Dashboard Stats?如何在带有仪表板统计信息的 ASP.Net 网页上显示 SQL Server 2008(服务器仪表板性能)?
【发布时间】:2013-10-25 19:45:21
【问题描述】:

有没有办法在 ASP.Net 网页上显示和显示 SQL Server 实例、配置和活动的服务器仪表板报告?我知道 SQL Server 2008 R2 具有生成标准报告的内置功能,关于如何在 ASP.Net/C# 中为最终用户视图复制和带来该报告的任何想法?非常感谢您的帮助。

【问题讨论】:

    标签: c# asp.net sql sql-server sql-server-2008


    【解决方案1】:

    这些是使用外部 URL 链接在 MS SQL Server 2008 R2 中配置和显示服务器仪表板性能的步骤:

    在 MS SQL Server 2008 R2 中显示性能仪表板报告:

    1- 从以下位置下载 Microsoft SQL Server 2012 性能仪表板报告: http://www.microsoft.com/en-us/download/details.aspx?id=29063 通过执行 setup.sql 从 SSMS 运行脚本

    2- 下载后,您可以通过转到 SQL Server Management Studio 并连接到本地服务器来运行报告。在对象资源管理器下右键单击(本地)(SQL Server)> 报告 > 自定义报告...找到 C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Performance Dashboard\performance_dashboard_main.rdl 并运行。你应该得到报告。

    显示带有外部 URL 链接的绩效仪表板报告:

    1- 在 MS SQL Server 2008 R2 下,转到配置工具 > Reporting Services 配置管理器并连接到本地服务器或单击以找到它(启动报表服务器)。

    规范提示:

    • 服务帐户 = 使用内置帐户:网络服务(默认)

    • Web 服务 URL = 为所有配置保留默认值

    • 数据库 = [当前报表服务器数据库] / 点击 - 更改数据库

      • 行动: 选择现有的报表服务器数据库

      • 数据库服务器:
        服务器名称 = 与您连接的本地服务器名称相同
        身份验证类型 = 当前用户集成安全(测试连接)

      • 数据库:
        SQL Server 实例 = 与您连接的本地服务器名称相同
        报表服务器 db = ReportServer
        报表服务器模式 = 本机
        Credentials/Login-Password = 保留默认值/AdministratorAccount 以访问 外部链接。 (推荐)
        身份验证类型 = 服务凭据
        [当前报表服务器数据库凭据] / 保留默认值

    • 报告管理器网址 = http://<ComputerName>:80/<YourReportName>

    • 电子邮件设置 = 可选

    • 执行帐户 = 默认(空白)

    • 加密密钥 = 默认

    • 横向扩展部署 = 默认

    2- 点击报告管理器 URL 的主页链接并上传: C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Performance Dashboard\performance_dashboard_main.rdl

    3- 上传后,单击它并在数据源下检查自定义数据源并检查 Windows 集成安全性 > 测试连接。现在,它应该可以工作了。

    注意:如果您使用的是 Chrome 或 Safari,页面将不会显示任何内容;所以,你必须找到: C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportManager\js\ReportingServices.js ...并且,将以下脚本添加到文件中:

    function pageLoad() {
    var element = document.getElementById("ctl31_ctl09");
    if (element) {
        element.style.overflow = "visible";    }
    }
    
    var jQueryScriptOutputted = false;
    function initJQuery() {
    
    //if the jQuery object isn't available
    if (typeof (jQuery) == 'undefined') {
    
    
        if (!jQueryScriptOutputted) {
            //only output the script once..
            jQueryScriptOutputted = true;
    
            //output the script 
            document.write("<scr" + "ipt type=\"text/javascript\" src=\"../js/jquery- 1.6.2.min.js\"></scr" + "ipt>");
        }
        setTimeout("initJQuery()", 50);
    } else {
    
        $(function () {
    
            // Bug-fix on Chrome and Safari etc (webkit)
            if ($.browser.webkit) {
    
                // Start timer to make sure overflow is set to visible
                setInterval(function () {
                    var div = $('table[id*=_fixedTable] > tbody > tr:last > td:last > div')
    
                    div.css('overflow', 'visible');
                }, 1000);
            }
    
        });
    }
    }
    
    initJQuery();
    
    I hope it helps someone!
    

    【讨论】:

      猜你喜欢
      • 2011-05-21
      • 1970-01-01
      • 2015-02-28
      • 2019-10-20
      • 2020-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多