全部产品
Search
文档中心

ApsaraDB RDS:Bagaimana cara melihat kapasitas penyimpanan yang digunakan oleh database dan tabel ApsaraDB RDS for SQL Server di dalam database?

更新时间:Jul 06, 2025

Topik ini menjelaskan cara melihat kapasitas penyimpanan yang digunakan oleh database dan tabel ApsaraDB RDS for SQL Server di dalam database.

Lihat kapasitas penyimpanan dari instance RDS for SQL Server

Anda dapat membuka halaman detail instance RDS for SQL Server dan melihat kapasitas penyimpanannya pada halaman Basic Information.

image

Lihat kapasitas penyimpanan yang digunakan oleh database

  1. Gunakan klien SSMS untuk terhubung ke instance RDS for SQL Server. Untuk informasi lebih lanjut, lihat Terhubung ke Instance ApsaraDB RDS for SQL Server.

  2. Jalankan perintah berikut untuk melihat kapasitas penyimpanan yang digunakan oleh sebuah database:

    USE <Nama Database>;
    GO
    EXEC sp_spaceused @updateusage = N'TRUE';

    Parameter

    Deskripsi

    database_size

    Ukuran database, termasuk ukuran file data dan file log. Nilai ini lebih besar daripada jumlah nilai parameter reserved dan unallocated space.

    unallocated space

    Ukuran penyimpanan yang tidak dialokasikan dari database.

    reserved

    Total ukuran penyimpanan yang dialokasikan untuk database.

    data

    Penyimpanan yang ditempati oleh data.

    index_size

    Penyimpanan yang ditempati oleh indeks.

    unused

    Penyimpanan yang dialokasikan tetapi tidak digunakan.

  3. Jalankan perintah berikut untuk melihat kapasitas penyimpanan yang digunakan oleh semua database dalam instance:

    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)))) DESC

    Hasilnya tidak mencakup kapasitas penyimpanan yang digunakan oleh file log. Anda dapat mengeksekusi pernyataan berikut untuk melihat ukuran file log:

    DBCC SQLPERF(LOGSPACE);

Lihat kapasitas penyimpanan yang digunakan oleh tabel dalam database

  1. Gunakan klien SSMS untuk terhubung ke instance RDS for SQL Server. Untuk informasi lebih lanjut, lihat Terhubung ke Instance ApsaraDB RDS for SQL Server.

  2. Jalankan perintah berikut untuk melihat kapasitas penyimpanan yang digunakan oleh sebuah tabel dalam database:

    USE <Nama Database>;
    GO
    EXEC sp_spaceused N'<Nama Tabel>';

  3. Jalankan perintah berikut untuk melihat kapasitas penyimpanan yang digunakan oleh semua tabel dalam database:

    USE <Nama Database>;
    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;

Referensi