Select the product you need help with
Deskripsi SQL Server menghalangi disebabkan oleh mengkompilasi kunciID Artikel: 263889 - Melihat produk di mana artikel ini berlaku. Pada Halaman iniRINGKASANDi Microsoft SQL Server, hanya satu salinan dari rencana disimpan prosedur adalah umumnya dalam cache pada suatu waktu. Menegakkan ini memerlukan serialisasi dari beberapa bagian dari proses kompilasi, dan sinkronisasi ini dicapai sebagian dengan menggunakan kunci kompilasi. Jika banyak koneksi secara bersamaan berjalan sama disimpan prosedur dan kompilasi kunci harus diperoleh untuk prosedur yang tersimpan setiap waktu yang berjalan, sistem proses ID (SPIDs) mungkin mulai memblokir satu sama lain ketika mereka masing-masing mencoba untuk mendapatkan kunci eksklusif kompilasi pada objek. INFORMASI LEBIH LANJUTDisimpan prosedur recompilation adalah salah satu penjelasannya untuk mengkompilasi kunci pada prosedur yang disimpan atau memicu. Solusi dalam hal mengurangi atau menghilangkan recompiles. Untuk penjelasan tentang alasan paling umum yang disimpan prosedur mungkin harus menjadi recompiled dan beberapa informasi yang berguna pada mengurangi frekuensi recompiles, lihat artikel Basis Pengetahuan Microsoft berikut: 243586 Skenario lain di mana kompilasi kunci terjadi adalah ketika kondisi berikut ini benar:
(http://support.microsoft.com/kb/243586/
)
Pemecahan masalah disimpan prosedur recompilation
Jika ada rencana ditemukan, SQL Server reuses rencana cache dan tidak benar-benar menyusun prosedur yang tersimpan. Namun, kurangnya pemilik-kualifikasi pasukan SQL Server untuk melakukan pencarian cache kedua dan mendapatkan kunci eksklusif kompilasi sebelum program menentukan bahwa ada rencana pelaksanaan cache dapat digunakan kembali. Mendapatkan kunci dan melakukan pencarian dan pekerjaan lain yang diperlukan untuk mencapai titik ini dapat memperkenalkan penundaan untuk mengkompilasi kunci yang mengarah ke menghalangi. Hal ini terutama berlaku jika banyak pengguna yang bukan pemilik prosedur yang tersimpan secara bersamaan menjalankan prosedur tanpa menyediakan nama pemilik. Sadarilah bahwa bahkan jika Anda tidak melihat SPIDs menunggu kompilasi kunci, kurangnya kualifikasi pemilik dapat memperkenalkan penundaan eksekusi order disimpan prosedur dan menyebabkan utilisasi CPU tidak perlu tinggi. Berikut urutan peristiwa akan tercatat dalam jejak SQL Server Profiler ketika masalah ini terjadi. (Untuk melacak kegiatan yang berhubungan dengan cache, Anda harus mengaktifkan kegiatan canggih. Untuk melakukannya, klikOpsi pada Alat menu, dan kemudian pilih Semua peristiwa kelas.) Perkecil tabel ini
SP:CacheMissterjadi ketika lookup cache dengan nama gagal. Berikut SP:ExecContextHit menunjukkan bahwa rencana cache pencocokan akhirnya ditemukan dalam cache setelah nama objek ambigu itu diselesaikan untuk objek ID. Tergantung pada keadaan, SP:CacheHitmungkin muncul bukannyaSP:ExecContextHit. Solusi untuk masalah ini kompilasi penguncian adalah untuk memastikan bahwa referensi untuk disimpan prosedur pemilik yang memenuhi syarat. (Bukan dari exec mystoredproc, menggunakan exec dbo.mystoredproc.) Sementara pemilik-kualifikasi penting untuk kinerja alasan, Anda tidak harus memenuhi syarat proc disimpan dengan nama database untuk mencegah lookup tambahan cache. Menghalangi yang disebabkan oleh kompilasi kunci dapat dideteksi dengan menggunakan memblokir skrip seperti yang didefinisikan dalam artikel Basis Pengetahuan Microsoft berikut: 251004
(http://support.microsoft.com/kb/251004/
)
INF: Bagaimana untuk memantau menghalangi SQL Server 7.0271509 Berikut adalah beberapa karakteristik khas kompilasi menghalangi yang diamati dalam memblokir skrip output:
(http://support.microsoft.com/kb/271509/
)
INF: Bagaimana untuk memantau menghalangi SQL Server 2000
spid blocked waittype waittime lastwaittype waitresource
---- ------- -------- -------- ------------ -------------------------
221 29 0x000e 2141 LCK_M_X TAB: 6:834102 [[COMPILE]]
228 29 0x000e 2235 LCK_M_X TAB: 6:834102 [[COMPILE]]
29 214 0x000e 3937 LCK_M_X TAB: 6:834102 [[COMPILE]]
13 214 0x000e 1094 LCK_M_X TAB: 6:834102 [[COMPILE]]
68 214 0x000e 1968 LCK_M_X TAB: 6:834102 [[COMPILE]]
214 0 0x0000 0 LCK_M_X TAB: 6:834102 [[COMPILE]]Catatan
Masalah yang dikenalBerikut adalah beberapa masalah yang diketahui yang dapat mencegah rencana cache:
PropertiID Artikel: 263889 - Kajian Terakhir: 22 September 2011 - Revisi: 2.0 Berlaku bagi:
Penerjemahan Mesin PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah. Klik disini untuk melihat versi Inggris dari artikel ini:263889
(http://support.microsoft.com/kb/263889/en-us/
)
| Terjemahan Artikel |




Kembali ke atas








