Bagikan melalui


sys.dm_tran_version_store_space_usage (T-SQL)

Berlaku untuk: SQL Server 2016 (13.x) SP 2 dan yang lebih baru Azure SQL DatabaseTidak didukung. Azure Synapse Analytics Analytics Tidak didukung. Platform System (PDW)

Mengembalikan tabel yang menampilkan total ruang dalam tempdb yang digunakan oleh rekaman penyimpanan versi untuk setiap database. sys.dm_tran_version_store_space_usage efisien dan tidak mahal untuk dijalankan, karena tidak menavigasi melalui rekaman penyimpanan versi individual, dan mengembalikan ruang penyimpanan versi agregat yang digunakan dalam tempdb per database.

Setiap rekaman versi disimpan sebagai data biner, bersama dengan beberapa informasi pelacakan atau status. Mirip dengan rekaman dalam tabel database, rekaman penyimpanan versi disimpan di halaman 8192-byte. Jika rekaman melebihi 8192 byte, rekaman akan dibagi menjadi dua rekaman yang berbeda.

Karena rekaman versi disimpan sebagai biner, tidak ada masalah dengan kolase yang berbeda dari database yang berbeda. Gunakan sys.dm_tran_version_store_space_usage untuk memantau dan merencanakan ukuran tempdb berdasarkan penggunaan ruang penyimpanan versi database dalam instans SQL Server.

Nama kolom Jenis data Deskripsi
database_id int ID database database.

Di Azure SQL Database, nilainya unik dalam satu database atau kumpulan elastis, tetapi tidak dalam server logis.
reserved_page_count bigint Jumlah total halaman yang dicadangkan dalam tempdb untuk rekaman penyimpanan versi database.
reserved_space_kb bigint Total ruang yang digunakan dalam kilobyte dalam tempdb untuk rekaman penyimpanan versi database.

Izin

Di SQL Server, memerlukan VIEW SERVER STATE izin.

Izin untuk SQL Server 2022 dan yang lebih baru

Memerlukan izin TAMPILKAN STATUS PERFORMA SERVER pada server.

Contoh

Kueri berikut dapat digunakan untuk menentukan ruang yang digunakan dalam tempdb, berdasarkan penyimpanan versi setiap database dalam instans SQL Server.

SELECT 
  DB_NAME(database_id) as 'Database Name',
  reserved_page_count,
  reserved_space_kb 
FROM sys.dm_tran_version_store_space_usage;  

Berikut set hasilnya.

Database Name            reserved_page_count reserved_space_kb  
------------------------ -------------------- -----------  
msdb                      0                    0             
AdventureWorks2022        10                   80             
AdventureWorks2022DW      0                    0             
WideWorldImporters        20                   160             

Lihat juga

Tampilan dan Fungsi Manajemen Dinamis (Transact-SQL)
Tampilan dan Fungsi Manajemen Dinamis Terkait Transaksi (Transact-SQL)