Gibt es Tools von Drittanbietern, die SQL Profiler-Tracedateien (.trc) lesen und / oder analysieren können? [Closed]

12

Ich habe eine .trc-Datei aus einer Ablaufverfolgung, die ein DBA für eine meiner Datenbanken durchgeführt hat. Ich habe das SQL Profiler-Tool nicht auf meinem PC installiert, daher kann ich den Inhalt nicht anzeigen und das Ablaufverfolgungsprotokoll nicht analysieren. Wie lese ich diese Datei, ohne dass der SQL Profiler auf meinem PC installiert ist?

Shane Wealti
quelle
Qure Profiler ist großartig ... Es zeigt Barchars und es ist leicht zu erkennen, welche Abfragen auf Ihrem Server die meiste Zeit in der Verarbeitung verbringen. Stellen Sie einfach sicher, dass Sie eine wirklich große Stichprobengröße erhalten (es ist vollkommen glücklich, eine 2-GB-Tracedatei zu verarbeiten). dbsophic.com/products/qure-optimizer
NickG

Antworten:

8

Verwenden Sie Clear Trace .

Kevin Kline bietet eine gute Übersicht über ClearTrace: Mit dem grafischen Zusammenfassungs-Tool können Sie Trace- / Profiler-Daten übersichtlich anzeigen

Wenn Sie einen einfachen Profiler benötigen , schauen Sie sich ExpressProfiler auf Codeplex an.

ExpressProfiler (auch bekannt als SqlExpress Profiler) ist ein einfacher, aber ausreichender Ersatz für SQL Server Profiler mit grundlegender Benutzeroberfläche. Keine Anforderungen, keine Installation. Kann mit Express- und Nicht-Express-Editionen von SQL Server 2005/2008 / 2008r2 / 2012 (einschließlich LocalDB) verwendet werden

Eigenschaften

Verfolgung grundlegender Ereignissätze (Batch / RPC / SP: Stmt wird gestartet / abgeschlossen, Audit-Anmeldung / Abmeldung - erforderliche Ereignisse können ausgewählt werden) und Spalten (Ereignisklasse, Textdaten, Anmeldung, CPU, Lesen, Schreiben, Dauer, SPID, Start- / Endzeit) Filtern nach Dauer Kopieren Sie alle / ausgewählte Ereigniszeilen in Form von XML in die Zwischenablage. Suchen Sie in der Spalte "Textdaten"

Kin Shah
quelle
1
Ein weiteres lebensrettendes Tool ist RML microsoft.com/en-us/download/details.aspx?id=8161
Adam Haines
@AdamHaines Einverstanden, aber es wird ein ganz neues Thema von SQL Nexus steuern :-)
Kin Shah
8

Ich würde den Trace wahrscheinlich in eine Tabelle importieren, zum Beispiel:

USE MyDB
GO 
SELECT * INTO MyTraceTable FROM ::fn_trace_gettable('C:\Path\To\My\Trace\MyTrace.trc',    
DEFAULT)

Wenn Sie keine Berechtigung zum Erstellen einer Tabelle haben, sollten Sie eine temporäre Tabelle verwenden oder SQL Server Express lokal installieren und den Trace dort importieren.

Kins Antwort (die gleichzeitig mit meiner eingegeben wurde) könnte eine bessere Option sein, aber ich habe ClearTrace noch nicht ausprobiert.

James L
quelle
1
Vergleicht man die normale Profiler- und Clear-Trace-Funktionalität, so kann man in Clear-Trace feststellen, wie viel CPU- und Festplatten-Lese- und -Schreibvorgänge ausgeführt wurden, und es werden auch Aggregate angezeigt. Ich habe es verwendet und es ist eine Zeitersparnis bei der Identifizierung von Engpässen. Dies ist eine Online-Version von tracetune.com
Kin Shah