Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk: SQL Server 2016 (13.x) SP2 dan versi
yang lebih baru Azure SQL DatabaseAzure SQL Managed
Instance SQL database
SQL di Microsoft Fabric
Mengembalikan tabel yang menampilkan total ruang dalam tempdb 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 8.192 byte, rekaman 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