Inisialisasi File Instan pada drive Bersama

8

Saya bertanya sesuatu yang mirip dengan ini sebelumnya, tetapi sebelumnya saya telah bertanya tentang memindahkan cadangan ke lokasi bersama. Kali ini saya penasaran: jika saya ingin mengembalikan database pada drive bersama, apakah saya harus mengaktifkan IFI di server itu atau hanya server yang menjalankan SQL Server?

Alasan saya bertanya adalah saya memulihkan database yang cukup besar dan macet di 100% dikembalikan selama beberapa jam terakhir. Jenis menunggu sp_whoisactiveadalah:

(28472716ms) `PREEMPTIVE_OS_WRITEFILEGATHER.

Satu-satunya waktu saya telah melihat bahwa adalah ketika IFI tidak, tapi saya tidak memilikinya diaktifkan pada SQL Server, tetapi tidak diaktifkan pada drive server bersama.

Chris Woods
sumber

Jawaban:

1

Jawaban Komunitas Wiki dihasilkan dari komentar pada pertanyaan, dari Bob Klimes , Sean Gallardy , dan Aaron Bertrand .


Anda harus mengaktifkan Inisialisasi File Instan (IFI) di server yang memegang disk. Mulai ulang SQL Server agar berlaku.

Anda dapat menguji apakah IFI sedang mengerjakan bagian tersebut dengan membuat database pada bagian tersebut dengan bendera jejak 3004 dan 3605 dihidupkan. Output ditulis ke log galat SQL Server.

Jika IFI berfungsi, tidak akan ada entri untuk mem-nolkan file mdf.

IFI tampaknya berfungsi dengan jaringan yang dibagikan, tetapi bagi saya pembuatan database uji membutuhkan waktu 45 detik untuk berbagi dan kurang dari 1 detik secara lokal. Bahkan dengan IFI diaktifkan, Anda mungkin masih memiliki masalah kinerja.

Paul White
sumber