Anforderungen für die Wiedergabe

Zusätzlich zu anderen Ereignisklassen, die Sie überwachen möchten, müssen in der Ablaufverfolgung folgende Ereignisklassen aufgezeichnet sein, damit die Ablaufverfolgung wiedergegeben werden kann (wenn Sie mithilfe der Ablaufverfolgungsvorlage TSQL_Replay eine Ablaufverfolgung konfigurieren, die später für die Wiedergabe verwendet wird, sind diese Ereignisse standardmäßig aktiviert):

  • CursorClose (nur beim Wiedergeben serverseitiger Cursor)

  • CursorExecute (nur beim Wiedergeben serverseitiger Cursor)

  • CursorOpen (nur beim Wiedergeben serverseitiger Cursor)

  • CursorPrepare (nur beim Wiedergeben serverseitiger Cursor)

  • CursorUnprepare (nur beim Wiedergeben serverseitiger Cursor)

  • Audit Login

  • Audit Logout

  • ExistingConnection

  • RPC Output Parameter

  • RPC:Completed

  • RPC:Starting

  • Exec Prepared SQL (nur beim Wiedergeben serverseitig vorbereiteter SQL-Anweisungen)

  • Prepare SQL (nur beim Wiedergeben serverseitig vorbereiteter SQL-Anweisungen)

  • SQL:BatchCompleted

  • SQL:BatchStarting

Zusätzlich zu anderen Datenspalten, die Sie aufzeichnen möchten, müssen die folgenden Datenspalten in einer Ablaufverfolgung aufgezeichnet sein, damit die Ablaufverfolgung wiedergegeben werden kann:

  • EventClass

  • EventSequence

  • TextData

  • ApplicationName

  • LoginName

  • DatabaseName

  • DatabaseID

  • ClientProcessID

  • HostName

  • ServerName

  • BinaryData

  • SPID

  • StartTime

  • EndTime

  • IsSystem

  • NTDomainName

  • NTUserName

  • Error

HinweisHinweis

Mithilfe der Ablaufverfolgungsvorlage TSQL_Replay können Sie Ablaufverfolgungen erstellen, die Daten für die Wiedergabe aufzeichnen.

In Microsoft SQL Server wird durch die Wiedergabe überprüft, ob die benötigten Ereignisse und Spalten vorhanden sind.Durch diese Änderung wird nicht nur die Genauigkeit der Wiedergabe erhöht, sondern auch die Suche bei der Problembehandlung vereinfacht, insbesondere wenn benötigte Daten fehlen. Die Wiedergabe gibt einen Fehler zurück und hält die Wiedergabe der aktuellen Datei an, wenn die von der Ablaufverfolgung benötigten Daten fehlen.

Wenn Sie eine Ablaufverfolgung für einen Server mit SQL Server (das Ziel) wiedergeben möchten und dieser Server nicht mit dem Server übereinstimmt, für den die Ablaufverfolgung ursprünglich erstellt wurde, sollten folgende Schritte ausgeführt werden:

  • Alle in der Ablaufverfolgung enthaltenen Benutzernamen und Benutzer müssen bereits auf dem Ziel und in derselben Datenbank wie auf der Quelle erstellt worden sein.

  • Alle Benutzernamen und Benutzer auf dem Ziel müssen über dieselben Berechtigungen wie auf der Quelle verfügen.

  • Alle Anmeldekennwörter müssen mit den Kennwörtern des Benutzers übereinstimmen, der die Wiedergabe ausführt.

  • Die Datenbank-IDs auf dem Ziel sollten mit denen auf der Quelle übereinstimmen. Andernfalls können Sie basierend auf DatabaseName einen Abgleich ausführen, sofern dieser in der Ablaufverfolgung enthalten ist.

  • Die Standarddatenbank für jeden in der Ablaufverfolgung enthaltenen Benutzernamen muss (auf dem Ziel) auf die entsprechende Zieldatenbank des Benutzernamens festgelegt werden. Beispielsweise enthält die wiederzugebende Ablaufverfolgung Aktivitäten für den Benutzernamen Fred in der Fred_Db-Datenbank der Quelle. Daher muss die Standarddatenbank auf dem Ziel für den Benutzernamen Fred auf die Datenbank festgelegt werden, die mit Fred_Db übereinstimmt (selbst wenn sich der Datenbankname unterscheidet). Legen Sie mithilfe der gespeicherten Systemprozedur sp_defaultdb die Standarddatenbank für den Benutzernamen fest.

Beim Wiedergeben von Ereignissen, die fehlende oder fehlerhafte Benutzernamen aufweisen, können Wiedergabefehler auftreten, die Wiedergabe wird jedoch fortgesetzt.

Informationen zu den Berechtigungen, die zur Wiedergabe einer Ablaufverfolgung erforderlich sind, finden Sie unter Erforderliche Berechtigungen zum Ausführen von SQL Server Profiler.