bagaimana saya bisa meminta server sql saya hanya mendapatkan ukuran database?
Saya menggunakan ini:
use "MY_DB"
exec sp_spaceused
Saya mengerti :
database_name database_size unallocated space
My_DB 17899.13 MB 5309.39 MB
Ini mengembalikan saya beberapa kolom yang tidak saya butuhkan, mungkin ada trik untuk memilih kolom database_size dari prosedur tersimpan ini?
Saya juga mencoba kode ini:
SELECT DB_NAME(database_id) AS DatabaseName,
Name AS Logical_Name,
Physical_Name,
(size * 8) / 1024 SizeMB
FROM sys.master_files
WHERE DB_NAME(database_id) = 'MY_DB'
Ini memberi saya hasil ini:
DatabaseName Logical_Name Physical_Name SizeMB
MY_DB MY_DB D:\MSSQL\Data\MY_DB.mdf 10613
MY_DB MY_DB_log D:\MSSQL\Data\MY_DB.ldf 7286
Jadi saya menulis ini:
SELECT SUM(SizeMB)
FROM (
SELECT DB_NAME(database_id) AS DatabaseName,
Name AS Logical_Name,
Physical_Name,
(size * 8) / 1024 SizeMB
FROM sys.master_files
WHERE DB_NAME(database_id) = 'MY_DB'
) AS TEMP
Saya mendapat: 1183
Jadi itu berhasil tapi mungkin ada cara yang tepat untuk mendapatkan ini?
sql
sql-server
sql-server-2008
sql-server-2008-r2
Adeel ASIF
sumber
sumber
Jawaban:
Coba yang ini -
Pertanyaan:
Keluaran:
Fungsi:
UPDATE 2016/01/22:
Tampilkan informasi tentang ukuran, ruang kosong, cadangan basis data terakhir
Keluaran:
sumber
Bandingkan juga hasil dengan hasil kueri berikut
Ini menghasilkan hasil yang mirip dengan yang berikut ini
Ada artikel yang bagus - Berbagai cara untuk menentukan ruang kosong untuk database SQL Server dan file database
sumber
DBCC SQLPERF(logspace)
Bekerja dengan sempurna bagi saya untuk menghitung ukuran basis data SQL di SQL Server 2012
sumber
sumber
EXEC sp_spaceused @oneresultset = 1
tampilkan dalam 1 baris semua hasilnyajika Anda menjalankan hanya 'EXEC sp_spaceused' Anda akan melihat dua baris Bekerja di SQL Server Management Studio v17.9
sumber
Anda dapat memeriksa bagaimana kueri ini bekerja berikut ini ini tautan ini .
sumber
Keluaran
sumber
Periksa Ukuran Basis Data di SQL Server untuk Azure dan On-Premises-
Metode 1 - Menggunakan Tampilan Sistem 'sys.database_files'
Metode 2 - Menggunakan Prosedur yang Disimpan Sistem 'sp_spaceused'
sumber
Sudah ada banyak jawaban bagus di sini, tetapi ada baiknya menyebutkan cara sederhana dan cepat untuk mendapatkan ukuran Database SQL Server dengan SQL Server Management Studio (SSMS) menggunakan laporan standar.
Untuk menjalankan laporan yang Anda butuhkan:
Ini mencetak laporan yang bagus:
Di mana Total space Reserved adalah ukuran total database pada disk dan itu termasuk ukuran semua file data dan ukuran semua file log transaksi.
Di bawah tenda, SSMS menggunakan tampilan dbo.sysfiles atau sys.database_files (tergantung pada versi MSSQL) dan beberapa jenis kueri ini untuk mendapatkan nilai total ruang yang dipesan:
sumber
Jika Anda hanya ingin memeriksa ukuran basis data tunggal, Anda dapat melakukannya dengan menggunakan SSMS Gui
Pergi ke Server Explorer -> Perluas -> Klik kanan pada Basis Data -> Pilih Properti -> Di jendela sembulan pilih tab Umum -> Lihat Ukuran
Sumber: Periksa ukuran database di server Sql (Berbagai Cara dijelaskan)
sumber