Saya telah secara manual mengubah ukuran file mdf / ndf ke ukuran besar untuk menghindari operasi autogrow pada database SQL Server. Karena file lebih besar, ada sangat sedikit ruang kosong pada partisi disk dan sysadmin terus mengingatkan saya bahwa saya kehabisan ruang.
Karena saya mengubah ukurannya, ada banyak ruang kosong dalam file data tetapi orang tidak dapat melihatnya melihat ukuran file / ruang kosong disk.
Bagaimana saya bisa memantau% nyata penggunaan file data? Saya lebih suka menggunakan penghitung perfmon. Saya prihatin bahwa ketika file benar-benar kehabisan ruang SQL Server tidak akan dapat mengalokasikan ruang yang cukup dan akan crash.
sumber
Saya punya metode lain untuk secara proaktif memonitor ruang file data dan mengingatkan jika ruang kosong turun di bawah persentase tertentu menggunakan SQL Alert.
Dasar-dasarnya adalah
Buat pesan kesalahan yang ditentukan pengguna di sys.messages. Ini akan digunakan oleh peringatan agen sql.
Sekarang buat pekerjaan Agen SQL. Pastikan Anda mengubah
set @threshold = 20 --->>>>>>>>>>>>>>>>> CHANGE HERE <<<<<<<<<<<<<<<<<<<<<---
skrip di bawah ini. Saya telah menempatkannya sebagai ambang yang sangat rendah, hanya untuk mensimulasikan peringatan. Jadwalkan pekerjaan yang akan dijalankan setiap 30 menit (ubah sesuai kebutuhan Anda).Sekarang buat peringatan untuk menanggapi
911421
nomor kesalahan.Catatan: Ada beberapa jenis perangkat tambahan yang dapat Anda lakukan dengan ide saya di atas.
sumber
Hanya untuk membangun pada jawaban Aaron dan Kin, Anda dapat melakukannya dengan penghitung perf, tetapi salah satu penghitung yang dapat diatur oleh pengguna .
Saya akan:
Jika Anda ingin diberitahukan dengan benar:
Peringatan adalah:
Tetapi mereka dapat digunakan dalam Perfmon atau alat serupa lainnya.
sumber
Juga ada pengaturan peringatan sederhana untuk memantau ukuran file data:
Tambahan 'Peringatan Ruang Log Rendah' akan memonitor ruang kosong untuk file log transaksi (autogrowth tidak aktif):
sumber