如何在具有仪表板统计信息的 ASP.Net 网页上显示 SQL Server 2008(服务器仪表板性能)
本文关键字:仪表板 Server SQL 显示 2008 网页 性能 服务器 Net 统计 ASP | 更新日期: 2023-09-27 18:37:03
有没有办法在 ASP.Net 网页上显示SQL Server实例,配置和活动的服务器仪表板报告?我知道SQL Server 2008 R2具有生成标准报告的内置功能,有关如何复制该报告并将其用于 ASP.Net/C#中的最终用户视图的任何想法?非常感谢您的帮助。
以下是使用外部 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通过执行安装程序从 SSMS 运行脚本.sql
2-下载后,您可以通过转到SQL Server Management Studio并连接到本地服务器来运行报表。在"对象资源管理器"下,右键单击"(本地)(SQL Server)">"报表">"自定义报表..."找到 C:''程序文件 (x86)''Microsoft SQL Server''110''Tools''Performance Dashboard''performance_dashboard_main.rdl 并运行。你应该得到报告。
显示带有外部 URL 链接的性能仪表板报告:
1-在MS SQL Server 2008 R2下,转到"配置工具">"报告服务配置管理器"并连接到本地服务器或单击以查找它(启动报表服务器)。
规格提示:
-
服务帐户 = 使用内置帐户:网络服务(默认)
-
Web 服务 URL = 保留所有配置的默认值
-
数据库 = [当前报表服务器数据库]/单击 - 更改数据库
-
行动:选择现有报表服务器数据库
-
数据库服务器:
服务器名称 = 与连接的
本地服务器名称相同身份验证类型 = 当前用户集成安全性(测试连接) -
数据库:
SQL Server 实例 = 与连接的
本地服务器名称相同报表服务器 db = 报表服务器
报表服务器模式 = 本机
凭据/登录密码 = 保留默认值/管理员帐户以访问 外部链接。(推荐)
身份验证类型 = 服务凭据
[当前报表服务器数据库凭据]/保留默认值
-
-
报表管理器 URL =
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!