Visualizza facilmente l'utilizzo dello spazio su disco delle singole tabelle SQL in un database
Con qualsiasi database attivo, i requisiti di archiviazione su disco aumenteranno nel tempo. Mentre è possibile visualizzare facilmente lo spazio su disco utilizzato da un intero database guardando nella pagina File delle proprietà del database in SQL Management Studio o semplicemente visualizzando i file sottostanti in Esplora risorse, cosa succede se si vuole scavare un po 'più a fondo e vedere il parti che costituiscono la somma del tutto?
Per vedere queste informazioni, è necessario visualizzare la dimensione delle singole tabelle. Fortunatamente, SQL Server ha una stored procedure incorporata, sp_SpaceUsed, che visualizza le statistiche di archiviazione delle singole tabelle. Sfruttando questa stored procedure, abbiamo creato uno script batch che consente di creare facilmente un elenco di ogni tabella in un database e visualizzare le sue statistiche di archiviazione.
Quando viene eseguito lo script, le seguenti informazioni per ogni tabella nel database sono elencate in un formato tabulare:
- Nome tabella del database
- Numero di righe nella tabella
- Spazio totale su disco assegnato a questa tabella da SQL
- Quantità di spazio su disco utilizzato per l'archiviazione dei dati
- Quantità di spazio su disco utilizzata per gli indici SQL interni
- Quantità di spazio su disco attualmente non utilizzata
Usando lo script
Lo script batch DBSize è compatibile con SQL 2005 e versioni successive e deve essere eseguito su una macchina su cui è installato lo strumento SQLCMD (installato come parte dell'installazione di SQL Server). Si consiglia di rilasciare questo script in una posizione impostata nella variabile PATH di Windows (ad es. C: Windows) in modo che possa essere facilmente chiamato come qualsiasi altra applicazione dalla riga di comando.
Per visualizzare le informazioni della guida, inserisci semplicemente:
DBSize /?
Esempi
Per eseguire un report su "MyDB" sull'istanza predefinita e indirizzare l'output su "MyDB Table Size.txt" sul desktop:
DBSize MyDB> "% UserProfile% DesktopMyDB Table Size.txt"
Per eseguire un report su "MyDB" nell'istanza denominata "Special" utilizzando l'utente "sa" con password "123456":
DBSize MyDB /S:.Special / U: sa / P: 123456
Scarica lo script batch di dimensioni della tabella del database da SysadminGeek.com