sobota, 12 maja 2018

[PL] SQL Server 2012 SP4 - jak sprawdzić ile miejsca zajmuje baza danych albo wybrana tabela?

W SQL Server istnieje wbudowana, systemowa procedura składowana o nazwie sp_spaceused, która pozwala na wyświetlenie informacji na temat tego ile miejsca zajmuje wybrana baza danych albo pojedyncza tabela. 

Aby skorzystać ze wspomnianej procedury, w celu ustalenia rozmiaru bazy danych, wystarczy wywołać polecenie EXEC sp_spaceused. W odpowiedzi powinniśmy uzyskać pożądane informacje. 


Aby ustalić rozmiar tabeli, należy wywołać przykładowo polecenie EXEC sp_spaceused N'dbo.BankiPolskie', gdzie dbo.BankiPolskie oznacza nazwę schematu i nazwę tabeli, która znajduje się we wskazanym schemacie. Żeby uzyskać pewność co do tego, że wartości, które zobaczymy będą aktualne, do naszego polecenia warto dodać jeszcze parametr @updateusage = N'TRUE'; Całość zatem będzie wyglądać następująco:

EXEC sp_spaceused N'dbo.BankiPolskie',
@updateusage = N'TRUE'; 
GO

Oto przykładowy wynik:


Z zaprezentowanej powyżej grafiki, możemy wywnioskować, że:
  • analizujemy tabelę o nazwie BankiPolskie (kolumna name)
  • ilość wierszy w tabeli BankiPolskie to 3 (kolumna rows)
  • całkowita ilość przydzielonego miejsca dla danego obiektu (w tym przypadku tabeli) to 16 KB (kolumna reserved)
  • całkowita ilość miejsca wykorzystywanego przez dane to 8 KB (kolumna data)
  • całkowita ilość miejsca wykorzystywanego przez indeksy to 8 KB (kolumna index_size)
  • całkowita ilość miejsca zarezerwowanego dla danego obiektu w bazie danych (w naszym przypadku tabeli), które nie jest wykorzystywane to 0 KB (kolumna unused)

Brak komentarzy:

Prześlij komentarz