Bu konu, bir RDS SQL Server örneğindeki veritabanlarının ve tabloların depolama alanının nasıl kontrol edileceğini açıklar.
Örnek alanını kontrol etme
Örnek ayrıntıları sayfasında, basic information bölümünde toplam ve kullanılan depolama alanını görüntüleyin.
usage statistics bölümünde toplam ve kullanılan storage space değerlerini görüntüleyin.
Veritabanı boyutunu kontrol etme
Bir SSMS istemcisi ile örneğe bağlanın. Daha fazla bilgi için bkz. SQL Server örneğine bağlanma.
-
Tek bir veritabanının alan kullanımını görüntülemek için aşağıdaki SQL komutunu çalıştırın:
USE <database_name>; GO EXEC sp_spaceused @updateusage = N'TRUE';
Parameter
Description
database_size
Veri ve günlük dosyaları dahil olmak üzere veritabanının toplam boyutu.
unallocated space
Veritabanındaki ayrılmamış alan.
reserved
Toplam ayrılmış alan.
data
Veriler tarafından kullanılan alan.
index_size
Dizinler tarafından kullanılan alan.
unused
Ayrılmış ancak kullanılmayan alan. -
Tüm veritabanlarının alan kullanımını görüntülemek için aşağıdaki SQL komutunu çalıştırın:
USE master GO DECLARE @insSize TABLE(dbName sysname,checkTime VARCHAR(19),dbSize VARCHAR(50),logSize VARCHAR(50)) INSERT INTO @insSize ( dbName, checkTime, dbSize, logSize ) EXEC sp_msforeachdb 'select ''?'' dbName,CONVERT(VARCHAR(19),GETDATE(),120) checkTime,LTRIM(STR(SUM(CASE WHEN RIGHT(FILENAME,3)<>''ldf'' THEN convert (dec (15,2),size) * 8 / 1024 ELSE 0 END),15,2)+'' MB'') dbSize, LTRIM(STR(SUM(CASE WHEN RIGHT(FILENAME,3)=''ldf'' THEN convert (dec (15,2),size) * 8 / 1024 ELSE 0 END),15,2)+'' MB'') logSize from ?.dbo.sysfiles' SELECT * FROM @insSize ORDER BY CONVERT(DECIMAL,LTRIM(RTRIM(SUBSTRING(dbSize,1,LEN(dbSize)-2)))) DESCAşağıda örnek bir çıktı gösterilmektedir:
dbName checkTime dbSize logSize master 2024-01-01 12:00:00 5.00 MB 1.50 MB tempdb 2024-01-01 12:00:00 8.00 MB 0.50 MB model 2024-01-01 12:00:00 3.25 MB 0.75 MBKullanılan alan yüzdesi gibi işlem günlüğü kullanımına ilişkin daha ayrıntılı bilgileri görüntülemek için aşağıdaki SQL komutunu çalıştırın:
DBCC SQLPERF(LOGSPACE);Sonuç kümesi şu sütunları döndürür: Database Name, Log Size (MB), Log Space Used (%) ve Status.
Bir veritabanındaki tablo boyutlarını kontrol etme
Bir SSMS istemcisi ile örneğe bağlanın. Daha fazla bilgi için bkz. SQL Server örneğine bağlanma.
-
Bir veritabanındaki tek bir tablonun boyutunu görüntülemek için aşağıdaki SQL komutunu çalıştırın:
USE <database_name>; GO EXEC sp_spaceused N'<table_name>';Aşağıda örnek bir çıktı gösterilmektedir:
name rows reserved data index_size unused zhtdb 10000 328 KB 304 KB 16 KB 8 KB -
Bir veritabanındaki tüm tabloların boyutlarını görüntülemek için aşağıdaki SQL komutunu çalıştırın:
USE <database_name>; GO DECLARE @tabSize TABLE ( name NVARCHAR(100), rows CHAR(20), reserved VARCHAR(18), data VARCHAR(18), index_size VARCHAR(18), unused VARCHAR(18) ); INSERT INTO @tabSize EXEC sp_MSForEachTable ' EXEC sp_spaceused ''?'''; SELECT * FROM @tabSize ORDER BY CONVERT(INT, REPLACE([data], 'KB', '')) DESC, 2 DESC;Aşağıda örnek bir çıktı gösterilmektedir:
name rows reserved data index_size unused zhtdb 10000 328 KB 304 KB 16 KB 8 KB