我们有一个在 IIS 6/ASP.NET 2.0 上运行的应用程序,该应用程序由 SQL Server 2005 STD 版本 X64 支持。有时,应用程序会因一些愚蠢的消息而崩溃(某些文件未在“select firled1, filed2.. from mytable”中找到)。当应用程序报告错误时,我从 sql server 获取了活动跟踪。注意:只有在服务器负载过重时才会遇到崩溃,例如多个用户同时创建一些报告。
问题是:如何使用跟踪文件来解决这种情况?如何检测出问题所在?
谢谢
我们有一个在 IIS 6/ASP.NET 2.0 上运行的应用程序,该应用程序由 SQL Server 2005 STD 版本 X64 支持。有时,应用程序会因一些愚蠢的消息而崩溃(某些文件未在“select firled1, filed2.. from mytable”中找到)。当应用程序报告错误时,我从 sql server 获取了活动跟踪。注意:只有在服务器负载过重时才会遇到崩溃,例如多个用户同时创建一些报告。
问题是:如何使用跟踪文件来解决这种情况?如何检测出问题所在?
谢谢
我在 SQLServerPedia上有一个关于 Profiler 入门的视频教程。简而言之,您需要将该跟踪文件导出到一个表中,然后单步执行以查看弹出的错误。Profiler 的跟踪文件或跟踪表本身不会说“这是您需要修复的内容以避免此错误”,就像转储文件会告诉您“这是错误的代码行”一样 - 您仍然需要一位经验丰富的 DBA 来解释结果。您可能希望将跟踪文件带到您当地的 SQL Server 用户组会议上,看看是否有人可以帮助您。
好的,您需要将跟踪数据转换为可以查询的形式,即表格。
以下是有关如何将跟踪文件加载到 SQL Server 表中的详细信息。
http://support.microsoft.com/kb/270599
然后,您需要确定导致您的问题的事件。在跟踪中搜索您感兴趣的数据库中发生的事件以及在您遇到错误时发生的事件。
以下链接为 SQL Server Profiler/Trace 信息提供了一个很好的起点。
http://msdn.microsoft.com/en-us/library/ms187929.aspx
通读这个,如果你卡住了,请告诉我。
干杯,