Setelah mengklik "Ambil basis data offline" di studio manajemen, pesan ini tetap hang dan tidak akan ditutup jika Anda mengklik tutup.
Apa cara yang baik untuk menangani pekerjaan macet seperti ini di studio manajemen? Bisakah Anda membunuh mereka melalui monitor aktivitas? Haruskah saya mencari proses apa yang menghentikan pekerjaan ini agar tidak lewat dan menghentikannya?
sql-server
ssms
A_V
sumber
sumber
ALTER DATABASE foo SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
pertama ... kalau tidak, hanya duduk dan menunggu, dan untuk database yang sibuk, itu bisa selamanya.Jawaban:
Saya akan mengatakan jangan pernah menggunakan hal "Ambil Offline" di GUI kecuali Anda tahu fakta bahwa database tidak digunakan. Apa saja. Itu sulit diketahui tanpa melakukan kerja keras, jadi mengapa tidak menyimpan skrip ini di suatu tempat dan selalu menggunakan ini?
Dan kemudian kebalikannya tentu saja:
Alasan Anda perlu mengaturnya
SINGLE_USER
terlebih dahulu adalah untuk menendang keluar setiap pengguna yang ada (ada opsi untuk melakukannya pada dialog lepaskan, tetapi tidak mengambil dialog luring), karena SQL Server memerlukan akses eksklusif ke database untuk mengambil itu offline. Sekarang, Anda mungkin ingin melakukan kerja keras tambahan untuk melihat siapa yang saat ini menggunakan database, seolah-olah Anda melakukan ini di tengah operasi cadangan besar atau pekerjaan ETL atau apa pun, yang mungkin bermasalah.EDIT : Saya telah mengajukan saran tentang Connect tentang ini (lihat Hubungkan # 2687832 ) dan juga telah mempostingnya ke Trello (diajukan di bawah "Object Explorer").
sumber
Ketika Anda sudah dalam situasi menggantung, jangan lupa Anda dapat mencari koneksi terbuka di server
di database lain, seperti master.
Memindai hasil untuk setiap tempat di mana database adalah yang Anda coba luring.
Perhatikan nilai kolom spid (proses id) dari baris tersebut.
Satu per satu, jalankan
di mana "##" adalah spid.
Tentu berhati-hati untuk memastikan bahwa proses-proses itu tidak penting untuk tetap berjalan ... mereka akan dihentikan tanpa bahkan menyelesaikan perintah terbaru dan tanpa peringatan.
sumber