Anzeigen der Festplattenspeicherbelegung einzelner SQL-Tabellen in einer Datenbank
Mit jeder aktiven Datenbank werden die Anforderungen an den Festplattenspeicher mit der Zeit steigen. Sie können den von einer gesamten Datenbank belegten Speicherplatz problemlos anzeigen, indem Sie entweder in SQL Management Studio auf der Seite Dateien der Datenbankeigenschaften nachsehen oder einfach die darunter liegenden Dateien in Windows Explorer anzeigen Teile, die die Summe des Ganzen umfassen?
Um diese Informationen anzuzeigen, müssen Sie die Größe der einzelnen Tabellen anzeigen. Glücklicherweise verfügt SQL Server über eine integrierte Prozedur, sp_SpaceUsed, die die Speicherstatistiken einzelner Tabellen anzeigt. Mithilfe dieser gespeicherten Prozedur haben wir ein Batch-Skript erstellt, mit dem Sie auf einfache Weise eine Liste jeder Tabelle in einer Datenbank erstellen und ihre Speicherstatistiken anzeigen können.
Wenn das Skript ausgeführt wird, werden die folgenden Informationen für jede Tabelle in der Datenbank in einem Tabellenformat aufgeführt:
- Name der Datenbanktabelle
- Anzahl der Zeilen in der Tabelle
- Gesamter Speicherplatz, der dieser Tabelle von SQL zugewiesen wurde
- Menge an Speicherplatz, der für die Datenspeicherung verwendet wird
- Plattenspeicherplatz, der für interne SQL-Indizes verwendet wird
- Derzeit nicht belegter Speicherplatz
Verwendung des Skripts
Das Batch-Skript von DBSize ist mit SQL 2005 und höher kompatibel und muss auf einem Computer ausgeführt werden, auf dem das SQLCMD-Tool installiert ist (installiert als Teil der SQL Server-Installation). Es wird empfohlen, dieses Skript an einem Speicherort abzulegen, der in Ihrer Windows-PATH-Variablen (d. H. C: Windows) festgelegt ist, so dass es leicht wie jede andere Anwendung von der Befehlszeile aus aufgerufen werden kann.
Um die Hilfeinformationen anzuzeigen, geben Sie einfach Folgendes ein:
DBSize /?
Beispiele
So führen Sie einen Bericht in "MyDB" in der Standardinstanz aus und leiten die Ausgabe auf "MyDB Table Size.txt" auf dem Desktop:
DBSize MyDB> "% UserProfile% DesktopMyDB Table Size.txt"
So führen Sie einen Bericht unter "MyDB" in der genannten Instanz "Special" mit dem Benutzer "sa" mit dem Kennwort "123456" aus:
DBSize MyDB /S:.Special / U: sa / P: 123456
Laden Sie das Batch-Skript für die Datenbanktabelle von SysadminGeek.com herunter