Als ich die Systemdatenbank mssqlsystemresource neulich mal untersucht, versucht ich mein Glück zunächst mit einem nur halb dokumentierten DBCC-Befehl: ersteht nicht in den Books-Online, aber in der Knowledgebase steht dann doch eine Anleitung.
Der Aufruf ist recht schlicht und kann aus einer beliebigen Datenbank erfolgen:
DBCC PAGE( {dbid|dbname}, filenum, pagenum [, printopt] [, cache] [,logical] )
Damit der Output sichtbar ist, muss man dem SQL-Server vorher noch sagen, dass er an den Client geschickt werden soll und nicht etwa ins Errorlog:
DBCC TRACEON (3604)
DBCC PAGE (32767, 1, 1, 1)
Parameter | Beschreibung |
dbid | ID der Datenbank |
dbname | Datenbankname |
filenum | Dateinummer (1 ist immer die MDF, 2 meist die LDF, usw.) |
pagenum | Seitennummer in der Datei |
printopt | optional: 0: Default; Buffer- und Page-Header 1: Buffer- und Page-Header; jeden Datensatz einzeln und die Satz-Offset-Tabelle 2: wie 1, aber alle Datensätze zusammen 3: wie 1, aber die Daten im Klartext |
cache | optional: 0: lädt die Seite "frisch" aus der Datenbank-Datei 1: zeigt die Seite aus dem Cache (Default) |
Ich habe das zum Glück noch nicht oft benötigt, aber irgendwie finde ich es echt cool mir die Datenseiten so richtig ansehen zu können…
Siehe auch
- "INFO: Description of DBCC PAGE Command" bei Microsoft (stimmt noch, aber den letzten Paramenter "logical" gibt es nicht mehr)
- Weitere nützliche DBCC-Befehle bei sql-server-performance.com