Hozir ulashing:

 

Mundarija yashirish

1. Kirish SQL Server Profil

1.1 nima SQL Server Profiler va u bizga nima uchun kerak?

SQL Server Profiler - bu ichida sodir bo'layotgan voqealarni kuzatish va yozib olish uchun grafik foydalanuvchi interfeysi vositasi SQL ServerUshbu kuchli diagnostika vositasi ma'lumotlar bazasi ma'murlari va ishlab chiquvchilariga ma'lumotlar bazasi dvigatelining faoliyatini real vaqt rejimida kuzatish imkonini beradi, bu esa ishlashdagi to'siqlarni aniqlashga, dastur muammolarini bartaraf etishga va xavfsizlik hodisalarini audit qilishga yordam beradi.

SQL Server Profil

1.2 SQL Server Profiler 2025: Hozirgi holat va muqobillar

Microsoft eskirgan SQL Server Profiler boshlanadi SQL Server 2016, tavsiya Kengaytirilgan tadbirlar almashtirish texnologiyasi sifatida. Shu bilan birga, asbob hozirgi vaqtda mavjud bo'lib qoladi SQL Server versiyalari, shu jumladan SQL Server 2022 va hali ham ma'lumotlar bazasi mutaxassislari tomonidan keng qo'llaniladi.

1.3 Ushbu qo'llanmadan kim foydalanishi kerak

  • Ushbu qo'llanma monitoringi kerak bo'lgan ma'lumotlar bazasi ma'murlariga xizmat qiladi SQL Server misollar, ishlash muammolarini tashxislash va tizim ishonchliligini ta'minlash. DBAlar izlarni olish, voqealarni tahlil qilish va monitoring strategiyalarini amalga oshirish bo'yicha amaliy ko'rsatmalar topadi.
  • Ilova ishlab chiquvchilari o'zlarining kodlari bilan qanday aloqada bo'lishini tushunishdan foyda ko'radilar SQL Server. SQL Profiler ishlab chiquvchilarga samarasiz so'rovlarni aniqlashga, dastur harakatlarini tekshirishga va ma'lumotlar bazasi bilan bog'liq xatolarni tuzatishga yordam beradi.
  • Ishlash bo'yicha tahlilchilar va maslahatchilar ish yukini tahlil qilish, imkoniyatlarni rejalashtirish va tizimni optimallashtirish uchun ilg'or usullarni kashf etadilar. Kuzatuv konfiguratsiyasi, filtrlash va tahlilning keng qamrovi ma'lumotlar bazasi faoliyatini to'liq baholash imkonini beradi.

2. Tushunish SQL Server Profiler asoslari

2.1 Qanday qilib SQL Server Profiler ishlari

SQL Server Profiler ichida ishlaydigan SQL Trace mexanizmiga ulanadigan mijoz ilovasi sifatida ishlaydi SQL Server. Iz yaratganingizda, ma'lumotlar bazasi mexanizmi ko'rsatilgan hodisalarni kuzatib boradi va ularni sizning konfiguratsiyangizga muvofiq yozib oladi. Kuzatuv mexanizmi to'g'ri sozlanganda server ishlashiga minimal ta'sir ko'rsatadigan voqea ma'lumotlarini to'playdi.

Asosiy SQL Trace infratuzilmasi ma'lumotlar bazasi mexanizmida engil hodisa ilgaklaridan foydalanadi. Sizning izingiz ta'rifiga mos keladigan voqea sodir bo'lganda, vosita tegishli ma'lumotlarni oladi va uni Profiler interfeysiga yuboradi yoki fayl yoki jadvalda saqlaydi. Ushbu arxitektura dastur kodini o'zgartirmasdan moslashuvchan ma'lumotlarni yig'ish imkonini beradi.

2.2 Asosiy tushunchalar va terminologiya

2.2.1 tadbirlari

Hodisalar ichidagi muayyan hodisalarni ifodalaydi SQL Server iz mexanizmi qo'lga olishi mumkin. Har bir hodisa ma'lum bir ma'lumotlar bazasi operatsiyasiga yoki tizim faoliyatiga mos keladi. SQL Server Profiler oson sozlash uchun voqealarni mantiqiy toifalarga ajratadi.

Umumiy hodisa toifalariga so'rovlarni bajarish uchun TSQL, protsedura qo'ng'iroqlari uchun saqlangan protseduralar, parallel monitoring uchun qulflar va istisnolarni kuzatish uchun xatolar va ogohlantirishlar kiradi. Tegishli hodisalarni tanlash sizning izingiz qanday ma'lumotni olishini aniqlaydi va izning foydaliligi va ishlashiga to'g'ridan-to'g'ri ta'sir qiladi.

Hodisa turlarini tushunish samarali izlarni sozlashga yordam beradi. RPC: Tugallangan hodisalar protsedura qo'ng'irog'ining masofadan bajarilishini, SQL: BatchCompleted hodisalari vaqtinchalik so'rovlar to'plamlarini kuzatadi va Lock: Deadlock hodisalari blokirovka holatlarini aniqlaydi. Muayyan muammolarni bartaraf etish yoki monitoring maqsadlaringizga mos keladigan voqealarni tanlang.

2.2.2 Ma'lumotlar ustunlari

Ma'lumotlar ustunlari har bir hodisa uchun qanday ma'lumotni olishini belgilaydi. Umumiy ustunlar orasida haqiqiy SQL bayonoti uchun TextData, bajarilish vaqtining davomiyligi, protsessordan foydalanish uchun protsessor, mantiqiy diskni o'qish uchun o'qishlar va mantiqiy disk yozish uchun yozishlar kiradi.

Muhim ustunlar foydalanish holatlariga qarab farqlanadi. Ishlash bilan bog'liq muammolarni bartaraf etish uchun odatda Davomiylik, CPU, o'qish va yozish ustunlari talab qilinadi. Xavfsizlik tekshiruvi uchun LoginName, DatabaseName va ObjectName ustunlari kerak. Ilova nomi, SPID va Xato ustunlaridan ilovalarni tuzatish afzalliklari.

Faqat kerakli ustunlarni tanlash tranzit xarajatlarini kamaytiradi va tahlilni soddalashtiradi. Agar kerak bo'lmasa, barcha mavjud ustunlarni yozib olishdan saqlaning. Har bir qo'shimcha ustun to'plangan va qayta ishlangan ma'lumotlar miqdorini oshiradi, bu esa serverning ishlashiga ta'sir qilishi mumkin.

2.2.3 Filtrlar

Filtrlar belgilangan mezonlarga asoslanib, qaysi hodisalarni kuzatishni cheklaydi. To'g'ri sozlangan filtrlar iz hajmini keskin kamaytiradi, tahlilni boshqarish mumkin bo'ladi va ishlashga ta'sirini kamaytiradi. Filtrlar hodisa ma'lumotlarini yozib olishdan oldin baholaydi va keraksiz ma'lumotlarni to'plashni oldini oladi.

Umumiy filtr mezonlari orasida ma'lum ma'lumotlar bazalariga e'tibor qaratish uchun DatabaseName, ma'lum ilovalarni ajratish uchun ApplicationName, faqat sekin operatsiyalarni yozib olish muddati va muayyan foydalanuvchilarni kuzatish uchun LoginName kiradi. Bir nechta filtrlarni birlashtirish sizga kerak bo'lgan narsani aniq aks ettiruvchi aniq ta'riflarni yaratadi.

Ishlab chiqarish muhiti uchun unumdorlikni hisobga olgan holda filtrlash zarur. Tizim faoliyatini yozib qo'ymaslik uchun har doim DatabaseName yoki ApplicationName bo'yicha filtrlang. Tez bajariladigan so'rovlarni e'tiborsiz qoldirish uchun minimal Davomiylik chegaralarini o'rnating. TextData filtrlaridan ehtiyotkorlik bilan foydalaning, chunki ular qo'shimcha xarajatlarni qo'shadigan qatorlarni taqqoslashni talab qiladi.

2.2.4 Trace shablonlari

Kuzatuv shablonlari umumiy stsenariylar uchun oldindan tuzilgan hodisa, ustun va filtr tanlovlarini taqdim etadi. SQL Server Profiler kuzatuv yaratish uchun boshlang'ich nuqta bo'lib xizmat qiladigan bir nechta o'rnatilgan shablonlarni o'z ichiga oladi. Maxsus shablonlar sizning konfiguratsiyalaringizni bir nechta kuzatuv sessiyalarida qayta foydalanish uchun saqlaydi.

Standart shablon asosiy monitoring uchun mos hodisalarning umumiy to'plamini oladi. TSQL shabloni so'rovlarni minimal xarajatlar bilan bajarishga qaratilgan. Tyuning shablonida ma'lumotlar bazasi mexanizmini sozlash bo'yicha maslahatchi tahlili uchun maxsus voqealar to'planadi. Har bir shablon ma'lumotni to'plash bilan ishlash ta'sirini muvozanatlashtiradi.

Maxsus shablonlarni yaratish vaqtni tejaydi va kuzatuv seanslari bo'ylab izchillikni ta'minlaydi. O'zingiz yoqtirgan voqealar, ustunlar va filtrlar bilan izni sozlang, so'ng uni shablon sifatida saqlang. Shu kabi muammolarni qayta-qayta hal qilganingizda maxsus shablonlar ayniqsa qimmatli bo'ladi.

3. Boshlash SQL Server Profil

3.1 Tizim talablari va shartlar

SQL Server Profiler bilan birga keladi SQL Server Management Studio va hozirda saqlanib qolgan barcha dasturlarni qo'llab-quvvatlaydi SQL Server versiyalari, dan SQL Server 2016 dan 2022 gacha.

Ruxsat talablari kim izlar yaratishi va ishga tushirishi mumkinligini aniqlaydi. Ruxsat etilgan tizim rolining a'zolari serverga cheklanmagan kirish huquqiga ega SQL Server Profiler funksiyasi. Tizim boshqaruvchisi bo'lmagan foydalanuvchilar uchun ALTER TRACE ruxsati izlarni yaratish va boshqarish imkoniyatini beradi.

Masofaviy serverlarni kuzatishda tarmoq masalalari qo'llaniladi. Mijoz tomoni izlari ish stantsiyangiz va ish stantsiyangiz o'rtasida uzluksiz tarmoq ulanishini talab qiladi SQL Server misol. To'xtatilgan ulanishlar mijoz tomoni izlarini to'xtatib, olingan ma'lumotlarni yo'qotishi mumkin. Server tomonidagi izlar to'liq ma'lumotlar bazasi serverida ishlash orqali ushbu cheklovdan qochadi.

3.2 Qanday ishga tushirish kerak SQL Server Profil

3.2.1 dan boshlab SQL Server Management Studio (SSMS)

Ishga tushirish uchun quyidagi amallarni bajaring SQL Server SSMS dan profiler:

  1. ochiq SQL Server Management Studio va istalganiga ulaning SQL Server misol.
  2. bosing Asboblar yuqori menyu satridagi menyu.
  3. tanlang SQL Server Profil ochiladigan menyudan.
  4. The SQL Server Profiler ilovasi yangi oynada ishga tushadi.

boshlanish SQL Server Profiler in SQL Server Menejment studiyasi.

3.2.2 Windows Boshlash menyusidan boshlash

Kirish SQL Server Profiler to'g'ridan-to'g'ri Windows'dan quyidagi amallarni bajarib:

  1. Windows-ni bosing boshlanish tugmasini bosing.
  2. Shrift SQL Server Profil qidiruv maydonchasida.
  3. tanlang SQL Server Profil qidiruv natijalaridan.
  4. Ilova faol ulanishlarsiz ishga tushadi.

boshlanish SQL Server Windows qidiruv maydonidan profiler.

Shu bilan bir qatorda, Boshlash menyusi ierarxiyasida harakatlaning:

  1. Kirish oching boshlanish menyu.
  2. Toping Microsoft SQL Server Asboblar jildning.
  3. Jildni kengaytiring va ustiga bosing SQL Server Profil.

boshlanish SQL Server Windows boshlash menyusidan Profiler.

3.2.3 ga ulanish SQL Server Voqealar

Ishga tushgandan so'ng SQL Server Profiler, quyidagi amallarni bajarib, ulanishni o'rnating:

  1. bosing Fayl Menyu satrida.
  2. tanlang Yangi iz ochiladigan menyudan.
  3. The Serverga ulaning dialog oynasi paydo bo'ladi.
  4. Server nomini kiriting Server nomi maydon.
  5. tanlang Windows autentifikatsiyasi or SQL Server Haqiqiylikni tekshirish.
  6. Agar foydalanayotgan bo'lsangiz SQL Server Autentifikatsiya, login hisob ma'lumotlarini kiriting.
  7. bosing Ulanish ulanishni o'rnatish.

A ga ulaning SQL Server misol SQL Server Profiler.

Masofaviy ulanishlar uchun, agar mavjud bo'lsa, misol nomini ham qo'shib, to'liq server nomini ko'rsating. Nomlangan misollar uchun SERVERNAME\INSTANCENAME formatidan foydalaning. Agar ulanishga urinishlar muvaffaqiyatsiz bo'lsa, tarmoq ulanishi va xavfsizlik devori sozlamalarini tekshiring.

4. Yaratish va sozlash SQL Server Izlar

4.1 Shablon yordamida birinchi iz yaratish

Quyidagi qadamlar yordamida birinchi izingizni yarating:

  1. Ishga tushirish SQL Server Profiler.
  2. bosing Fayl -> Yangi iz va maqsadli serveringizga ulaning.
  3. The Track xususiyatlari dialog oynasi paydo bo'ladi.
  4. Unga tavsiflovchi nom kiriting Iz nomi maydon.
  5. dan shablonni tanlang Shablondan foydalaning ochiladigan ro'yxat.
  6. tanlang Standart (standart) Umumiy monitoring uchun shablon. Yoki boshqa maqsadlar uchun boshqa shablon. Shablon umumiy stsenariylar uchun oldindan tuzilgan hodisalar, ustunlar va filtrlarni taqdim etadi.
  7. bosing yugurish voqealarni darhol yozib olishni boshlash uchun.

Track xususiyatlarini o'rnating SQL Server Profiler.

4.2 Traceingizni sozlang

Ko'pincha shablonlar sizning talablaringizga javob bera olmaydi. Bunday holda, siz o'z izingizni to'liq sozlashingiz mumkin:

  1. In Track xususiyatlari muloqot oynasi.
  2. Tanlang Bo'sh dan shablon Shablondan foydalaning ochiladigan ro'yxat.Iz uchun bo'sh shablondan foydalaning.
  3. bosing Tadbirlarni tanlash yorlig'iga o'ting, endi siz barcha hodisalarni, ma'lumotlar ustunlarini va filtrlarni talablaringiz asosida sozlashingiz mumkin. Biz ularni keyingi bo'limlarda muhokama qilamiz.
    "Tuzatish xususiyatlari" dialog oynasining "Voqeani tanlash" yorlig'ida kuzatuvni sozlang.

4.3 Rasmga olish uchun hodisalarni tanlash

Siz voqeani bo'limda tanlashingiz mumkin Tadbirlarni tanlash yorlig'i:

  1. bosing + Uni kengaytirish uchun Voqealar toifasi yonidagi belgini bosing.
  2. Uni tanlash uchun hodisa yonidagi katakchani bosing.

"Trace Properties" dialog oynasida hodisani tanlang.

4.3.1 Hodisa toifalarini tushunish

SQL Server Profiler hodisalarni mantiqiy guruhlash uchun toifalarga ajratadi. Saqlangan protseduralar kategoriyasi SP:Start, SP:Completed va SP:StmtCompleted kabi protsedura bajarilishi uchun hodisalarni o'z ichiga oladi. Bu hodisalar saqlangan protsedura chaqiruvlarini va protseduralar ichidagi individual operatorlarning bajarilishini kuzatib boradi.

TSQL kategoriyasi SQL:BatchStarting va SQL:BatchCompleted kabi hodisalar bilan ad-hoc so'rov bajarilishini qayd etadi. Bu hodisalar to'g'ridan-to'g'ri yuborilgan so'rovlarni kuzatib boradi. SQL Server saqlangan protseduralardan tashqarida.

Qulflar toifasi bir vaqtning o'zida sodir bo'lgan voqealarni kuzatib boradi, jumladan, Qulflash: Qabul qilingan, Qulflash: Bo'shatilgan, Qulflash: O'lik va Lock: Vaqt tugashi. Ilova ishlashiga ta'sir qiluvchi blokirovka va blokirovka muammolarini tashxislash uchun ushbu hodisalardan foydalaning.

Xatolar va ogohlantirishlar toifasi istisno holatlari, jumladan, istisno, diqqat va foydalanuvchi xatosi xabarini qamrab oladi. Ushbu hodisalar dastur xatolarini aniqlashga yordam beradi va SQL Server kuzatuv seanslari paytida ogohlantirishlar.

4.3.2 Ssenariyingiz uchun to'g'ri hodisalarni tanlash

Ishlash monitoringi resurslarni sarflaydigan hodisalarni talab qiladi. So‘rovlar bajarilishini kuzatish uchun RPC:Completed va SQL:BatchCompleted-ni tanlang. Resursdan foydalanishni o'lchash uchun Davomiylik, CPU, o'qish va yozish ustunlarini qo'shing. Ushbu hodisalar ishlashdagi qiyinchiliklarni aniqlash uchun asos bo'lib xizmat qiladi.

Xavfsizlik auditi autentifikatsiya va avtorizatsiyani kuzatuvchi hodisalarni talab qiladi. Ma'lumotlar bazasiga kirishni kuzatish uchun Auditga kirish, Auditdan chiqish, Auditga kirish amalga oshmadi va Ob'ekt:Ochiqni tanlang. Kim qaysi manbalarga kirganligini aniqlash uchun LoginName, DatabaseName va ObjectName ustunlarini qo'shing.

Nosozliklarni tuzatish stsenariylari keng qamrovli hodisalarni yozib olishdan foyda ko'radi. To'liq bajarilish oqimlarini kuzatish uchun saqlangan protsedura hodisalarini, SQL paket hodisalarini va xato hodisalarini qo'shing. Hodisalarni ma'lum sessiyalar bilan bog'lash uchun SPID, ApplicationName va HostName ustunlari bilan qo'shimcha kontekstni yozib oling.

4.4 Ma'lumotlar ustunlarini sozlash

Odatiy bo'lib, hodisani tanlaganingizda, uning barcha ma'lumotlar ustunlari tanlanadi (belgilanadi). Qo'shimcha xarajatlarni kamaytirish va tahlilni soddalashtirish uchun keraksiz ustunlarni olib tashlashingiz mumkin:

"Kuzatuv xususiyatlari" dialog oynasida hodisa uchun ma'lumotlar ustunlarini tanlang/tanlovni olib tashlang.

Har bir kuzatuv uchun muhim ustunlar voqea turini aniqlash uchun EventClass, haqiqiy SQL operatorini olish uchun TextData, bajaruvchi foydalanuvchini aniqlash uchun LoginName va voqea sodir bo'lgan vaqtni belgilash uchun StartTime ni o'z ichiga oladi. Bu ustunlar har bir olingan voqea uchun asosiy kontekstni taqdim etadi.

Ishlash bilan bog'liq ustunlar resurslar sarfini o'lchaydi. Davomiylik hodisaning mikrosekundlarda qancha davom etganini ko'rsatadi. CPU protsessor vaqtini millisekundlarda ko'rsatadi. O'qish mantiqiy sahifani o'qishni hisoblaydi. Yozadi treklarni mantiqiy sahifa yozadi. Ushbu ko'rsatkichlar optimallashtirishni talab qiluvchi resurslarni talab qiladigan operatsiyalarni aniqlaydi.

Xavfsizlik va audit ustunlari ma'lumotlarga kirish modellarini kuzatib boradi. DatabaseName qaysi ma'lumotlar bazasiga kirganligini aniqlaydi. ObjectName jalb qilingan jadval yoki ob'ektni belgilaydi. ApplicationName qaysi dastur faoliyatni boshlaganini ko'rsatadi. Bu ustunlar birgalikda keng qamrovli audit yo'llarini taqdim etadi.

4.5 Shovqinni kamaytirish uchun filtrlarni o'rnatish

4.5.1 Umumiy filtr mezonlari

Quyidagi yondashuv yordamida filtrlarni sozlang:

  1. Kirish oching Track xususiyatlari muloqot oynasi.
  2. bosing Tadbirlarni tanlash yorlig'ini bosing.
  3. bosing Ustun filtrlari pastki o'ngdagi tugma.
    "Kuzatuv xususiyatlari" dialog oynasida "Ustun filtrlari" tugmasini bosing.
  4. Chapdagi ro'yxatdan ustunni tanlang.
  5. O'ng tarafdagi panelda filtr mezonlarini sozlang.
    "Kuzatuv xususiyatlari" muloqot oynasida ma'lumotlar ustuni uchun filtrni o'rnating.
  6. bosing OK filtrni qo'llash uchun.

Ilova nomi filtrlari faoliyatni muayyan ilovalardan ajratib turadi. Filtr muloqot oynasidagi ApplicationName ustunini kengaytiring, ilova nomini kiriting kabi maydon, va SQL Server Profiler faqat ushbu ilovadagi voqealarni yozib oladi. Ushbu filtr ilovaga tegishli muammolarni bartaraf etishda bebahodir.

Ma'lumotlar bazasi nomi filtrlari ma'lum ma'lumotlar bazalariga yozib olishni cheklaydi. Tizim maʼlumotlar bazasi faoliyatini istisno qilish va ilova maʼlumotlar bazalariga eʼtibor qaratish uchun DatabaseName boʻyicha filtrlang. Ma'lumotlar bazasi nomlarini kiriting kabi or teng maydon sizga joker belgilarni moslashtirish kerakmi yoki yo'qligiga bog'liq.

Davomiylik filtrlari faqat sekin ishlaydigan operatsiyalarni qamrab oladi. Minimal chegarani belgilang Kattaroq yoki teng Davomiylik ustuni ostidagi maydon. Misol uchun, Davomiylik >= 1000 ni o'rnatish faqat tez bajariladigan so'rovlarni filtrlab, bir soniyadan ko'proq davom etadigan voqealarni yozib oladi.

Foydalanuvchi nomi filtrlari foydalanuvchining muayyan faolligini kuzatib boradi. Muayyan ma'lumotlar bazasi foydalanuvchilarini kuzatish uchun LoginName bo'yicha filtrlang. Ushbu yondashuv qaysi foydalanuvchilar muammoli so'rovlarni bajarishini yoki maxfiy ma'lumotlarga kirishini aniqlashga yordam beradi.

4.4.2 Eng yaxshi amaliyotlarni filtrlash

Samarali filtrlash ma'lumotlarni yig'ish va ishlashga ta'sirni muvozanatlashtiradi. Haddan tashqari tizim faolligini qayd etishning oldini olish uchun har doim kamida bitta filtrdan foydalaning. DatabaseName va ApplicationName filtrlari ko'pgina kuzatuvlar uchun boshlang'ich nuqta bo'lishi kerak.

Ishlab chiqarish muhitida juda keng izlardan saqlaning. Filtrlanmagan izlar juda katta hajmdagi ma'lumotlarni to'playdi, bu esa server ish faoliyatini yomonlashtirishi va tahlilni amaliy bo'lmagan holga keltirishi mumkin. Muammolarni bartaraf etish maqsadlaringizga qaratilgan maxsus filtrlash mezonlarini o'rnating.

Ishlab chiqarishga joylashtirishdan oldin filtrlarni sinab ko'ring. Filtrlar kutilgan hodisalarni ortiqcha xarajatlarsiz yozib olishini tekshirish uchun avval ishlab chiqish yoki sinov muhitlariga qarshi izlarni ishga tushiring. Olingan ma'lumotlar hajmiga qarab filtrlash mezonlarini sozlang.

4.5 Trace shablonlari bilan ishlash

4.5.1 O'rnatilgan shablonlarga umumiy nuqtai

Standart shablon umumiy monitoring uchun mos keladigan muvozanatli hodisalarni yozib olishni ta'minlaydi. U umumiy so'rovlarni bajarish hodisalarini, saqlangan protsedura chaqiruvlarini va asosiy xatolarni kuzatishni o'z ichiga oladi. Toʻliq koʻrinishga muhtoj boʻlganingizda aynan nimani izlash kerakligini bilmasdan, ushbu shablondan foydalaning.

TSQL shabloni, ayniqsa, minimal hodisa tanlash bilan so'rovlarni bajarishga qaratilgan. U unumdorlikni tahlil qilish uchun muhim ustunlar bilan SQL:BatchCompleted va RPC:Completed voqealarini yozib oladi. Ushbu shablon standart shablonga qaraganda kamroq qo'shimcha xarajatlarni taklif qiladi.

Tuning shabloni Ma'lumotlar bazasi mexanizmini sozlash bo'yicha maslahatchi tahlili uchun voqea tanlovini optimallashtiradi. U ish yukini tahlil qilish va indeks tavsiyalari uchun zarur voqealar va ustunlarni oladi. Avtomatlashtirilgan ishlashni sozlash uchun izlarni tayyorlashda ushbu shablondan foydalaning.

TSQL_Replay shabloniga izni takrorlash funksiyasi uchun zarur bo'lgan barcha hodisalar va ustunlar kiradi. U sinov muhitida olingan ish yuklarini takrorlash imkonini beruvchi keng qamrovli bajarish tafsilotlarini oladi. Ushbu shablon keng ko'lamli ma'lumotlar to'plami tufayli kattaroq iz fayllarini yaratadi.

4.5.2 Shaxsiy shablonlarni yaratish

Quyidagi amallarni bajarib, shaxsiy shablonlarni yarating:

  1. bosing Fayl -> andozalar -> Yangi shablon…
  2. Unga tavsiflovchi nom kiriting Yangi shablon nomi maydon.
  3. Majburiy emas, tekshiring Yangi shablonni mavjud shablonga asoslang va agar siz noldan qurishni xohlamasangiz, mavjud shablonni tanlang:
    da yangi shablon yarating SQL Server Profiler.
  4. bosing Voqealar tanlovi yorlig'ida, xuddi siz kabi kerakli voqealar, ustunlar va filtrlar bilan kuzatuv shablonini sozlang oddiy iz bilan bajaring.
  5. bosing saqlash shablonni saqlash uchun.

Shablonlarni jamoa aʼzolari bilan boʻlishish yoki zaxiralash maqsadida eksport qiling:

  1. bosing Fayl -> andozalar -> Eksport shablon.
  2. Eksport qilmoqchi bo'lgan shablonni tanlang.
    Izlash shablonini eksport qiling SQL Server Profiler.
  3. O'zingiz xohlagan saqlash joyiga o'ting.
  4. Fayl nomini kiriting va ustiga bosing saqlash.
  5. *.tdf faylini ulashing (SQL Server Profiler shablon fayli) boshqalar bilan SQL Server Profiler foydalanuvchilari.

4.6 Trace Outputni saqlash

Avvalboshdan, SQL Server Profiler voqealarni kuzatuv oynasida ko'rsatadi, lekin ularni saqlamaydi. Siz kuzatuv ma'lumotlarini fayl yoki jadvalda saqlashni tanlashingiz mumkin Track xususiyatlari yangi iz yaratganingizda dialog oynasi.

4.6.1 Faylga saqlash

  1. In Track xususiyatlari dialog, tekshirish Faylga saqlang.
  2. Fayl brauzerini ochish uchun papka belgisini bosing.
  3. O'zingiz xohlagan saqlash joyiga o'ting.
  4. .trc kengaytmali fayl nomini kiriting.
  5. bosing saqlash.
  6. o'rnating Maksimal fayl hajmini belgilang individual fayl hajmini cheklash uchun.
  7. yoqish Fayllarni aylantirishni yoqish bir nechta fayllarni yaratish uchun.
  8. Ixtiyoriy ravishda yoqish Server kuzatuv ma'lumotlarini qayta ishlaydi server tomonidagi izlar uchun.

"Trace Properties" dialog oynasida kuzatuv ma'lumotlarini faylga saqlash uchun sozlang.

Fayl o'lchamini boshqarish diskdagi bo'sh joyni to'ldirishni oldini oladi. Mavjud disk maydoni va kutilgan kuzatuv davomiyligi asosida faylning maksimal hajmini 500 MB yoki 1 GB kabi maqbul qiymatga o'rnating. O'lcham chegarasiga yetganda, faylni aylantirish avtomatik ravishda yangi fayllarni yaratadi va fayl nomiga raqam qo'shadi.

4.6.2 Jadvalga saqlash

  1. In Track xususiyatlari dialog, tekshirish Jadvalga saqlash.
  2. The Belgilangan manzil jadvali dialog oynasi paydo bo'ladi.
    Kuzatuv ma'lumotlarini saqlash uchun maqsad jadvalini tanlang.
  3. dan serverni tanlang Server ochiladigan ro'yxat.
  4. dan ma'lumotlar bazasini tanlang ma'lumotlar bazasi ochiladigan ro'yxat.
  5. Mavjud jadvalni tanlang yoki yangi jadval nomini kiriting Table maydon.
  6. bosing OK tasdiqlash uchun.
  7. Ixtiyoriy ravishda o'rnatiladi Maksimal qatorlarni o'rnating stol hajmini cheklash uchun.

"Trace Properties" dialog oynasida kuzatuv ma'lumotlarini jadvalga saqlash uchun sozlang.

Jadvallarga saqlashda unumdorlikka e'tibor qaratiladi. Jadvalni saqlash faylni saqlash bilan solishtirganda qo'shimcha xarajatlarni keltirib chiqaradi, chunki SQL Server saqlash mexanizmi orqali iz ma'lumotlarini yozishi kerak. T-SQL yordamida kuzatuv ma'lumotlarini darhol so'rash kerak bo'lganda jadval xotirasidan foydalaning.

Ma'lumotlarni saqlash jadvalga asoslangan izlar uchun muhim bo'ladi. Jadvallar juda katta o'sishiga yo'l qo'ymaslik uchun maksimal qator chegaralarini o'rnating. Ishlashni davom ettirish uchun eski kuzatuv ma'lumotlarini muntazam ravishda arxivlang yoki o'chiring. Yaxshiroq boshqarish uchun katta kuzatuv jadvallarini qismlarga ajratishni ko'rib chiqing.

5. Yugurish va boshqarish SQL Server Izlar

5.1 Izlarni boshlash, to'xtatib turish va to'xtatish

Asboblar paneli tugmalari yordamida kuzatuv bajarilishini boshqaring:Izlarni asboblar panelidagi tugmalar orqali boshqaring SQL Server Profiler.

  • Yashil boshlanish tugmasi konfiguratsiyangizga muvofiq hodisalarni yozib olishni boshlaydi.
  • bosing to'xtam ulanishni uzmasdan ma'lumotlar yig'ishni vaqtincha to'xtatib turish.
  • bosing To'xta izni tugatish va ulanishni yopish uchun.

Menyu elementlari orqali:
Menyu elementlari orqali izlarni boshqaring SQL Server Profiler.

Kuzatuv oynasidagi istalgan yozuvni o'ng tugmasini bosing:

Menyudagi sichqonchaning o'ng tugmachasini bosish orqali izlarni boshqaring SQL Server Profiler.

Trace lifecycle management server resurslariga ta'sir qiladi. Faol izlar olingan hodisalar hajmiga mutanosib ravishda xotira va ishlov berish quvvatini sarflaydi. Qo'shimcha xarajatlarni kamaytirish uchun monitoring kerak bo'lmagan davrlarda izlarni to'xtatib turing. Resurslarni bo'shatish uchun tahlil tugagach, izlarni butunlay to'xtating.

Mijoz tomonidagi izlar faol Profiler ulanishini talab qiladi. ni yopish SQL Server Profiler oynasi mijoz tomonidagi izlarni darhol to'xtatadi. Boshqa ilovalarda ishlayotganda izlarni davom ettirish uchun uni yopish o'rniga Profiler oynasini minimallashtiring.

5.2 Haqiqiy vaqtda kuzatuv monitoringi

Asosiy kuzatuv oynasida sodir bo'lgan voqealarni kuzatib boring. Har bir qator bitta hodisani ifodalaydi, ustunlar esa voqea xususiyatlarini ko'rsatadi. Faol kuzatuvlar paytida panjara doimiy ravishda yangilanadi va sukut bo'yicha eng so'nggi voqealar pastki qismida ko'rsatiladi.

Haqiqiy vaqtda kuzatuv monitori SQL Server Profiler.

Hodisalarning chastotasi va xususiyatlarini kuzatish orqali naqsh va muammolarni aniqlang. Yuqori davomiy hodisalar ishlash muammolarini ko'rsatadi. Tez-tez uchraydigan xato hodisalari dastur bilan bog'liq muammolarni ko'rsatadi. G'ayrioddiy kirish harakati xavfsizlik bilan bog'liq muammolarni ko'rsatishi mumkin. Haqiqiy vaqtda monitoring paydo bo'lgan muammolarga darhol javob berishga imkon beradi.

Muayyan hodisalarni ko'rib chiqish uchun olingan voqealar bo'ylab aylantiring. Hodisani tanlash va uning toʻliq tafsilotlarini koʻrish uchun istalgan qatorni bosing. Barcha ustun qiymatlarini ko'rsatadigan batafsil xususiyat dialoglarini ochish uchun hodisalarni ikki marta bosing. Tarixiy voqealarni ko'rib chiqishda avtomatik aylantirishni oldini olish uchun aylantirishni blokirovka qilish xususiyatidan foydalaning.

5.3 Bir vaqtning o'zida bir nechta izlarni boshqarish

Bir vaqtning o'zida bir nechta izlarni bajarish murakkab monitoring stsenariylari uchun moslashuvchanlikni ta'minlaydi. Ma'lumotlar bazasi faoliyatining turli jihatlari uchun alohida izlar yarating, masalan, unumdorlikni nazorat qilish uchun bir iz va xavfsizlik auditi uchun boshqasi. Har bir iz mustaqil ravishda o'z konfiguratsiyasi bilan ishlaydi.

Bir vaqtning o'zida bir nechta izlarni boshqaring SQL Server Profiler.

Resurslarni taqsimlash bir nechta izlar bilan muhim bo'ladi. Har bir faol iz xotira, protsessor va potentsial disk kiritish-chiqarishni sarflaydi. Bir vaqtning o'zida izlar sonini cheklang va har bir iz qo'shimcha xarajatlarni kamaytirish uchun tegishli filtrlardan foydalanishiga ishonch hosil qiling. Bir nechta izlarni ishga tushirishda server ish faoliyatini kuzatib boring.

Yuqori ustki izlarning bir-birining ustiga chiqishini oldini olish uchun iz vaqtini muvofiqlashtiring. Iloji bo'lsa, faolligi past bo'lgan davrlarda resurslarni ko'p talab qiluvchi izlarni ishga tushiring. Hamma narsani bir vaqtning o'zida bajarishdan ko'ra, turli vaqtlarda turli izlarni rejalashtiring.

5.4 Mijoz tomonidagi izlar va server tomonidagi izlar

Odatiy bo'lib, yangi yaratilgan iz mijoz tomonidagi iz bo'lib, u faol ulanishni talab qiladi SQL Server Profiler ma'lumotlar bazasi serveriga. Agar ulanish uzilib qolsa yoki Profiler yopilsa, kuzatuv darhol to'xtaydi.

Shuningdek, siz server tomonida to'liq ishlaydigan iz yaratishingiz mumkin SQL Server faol Profiler ulanishini talab qilmasdan misol. Server tomonidagi kuzatuv yopilgandan keyin ham davom etadi SQL Server Profiler, belgilangan fayl joyiga ma'lumotlarni yozish.

Server tomonida iz yaratish uchun:

  1. Fayl -> Yangi iz ... ni bosing.
  2. In Track xususiyatlari dialog, tekshirish Faylga saqlang
  3. Fayl joylashuvi va boshqa sozlamalarni o'rnating.
  4. yoqish Server kuzatuv ma'lumotlarini qayta ishlaydi server tomonida iz yaratish.

Server tomonida iz yarating SQL Server Profiler.

Ishlash natijalari iz turlari orasida sezilarli darajada farqlanadi. Mijoz tarafidagi izlar ma'lumotlarni tarmoq orqali Profiler interfeysiga uzatib, kechikish va tarmoqli kengligi sarfini qo'shishi kerak. Server tomonidagi izlar kamroq yukni keltirib chiqaradi, chunki ma'lumotlar to'g'ridan-to'g'ri serverdagi diskka yoziladi.

Mijoz tomonidagi kuzatuvlardan vaqtinchalik muammolarni bartaraf etish, tezkor diagnostika sessiyalari va darhol vizual fikr-mulohaza muhim bo'lgan holatlar uchun foydalaning. Ishlab chiqarishni monitoring qilish, uzoq muddatli suratga olishlar va qarovsiz ishlashni talab qiladigan stsenariylar uchun server tomonidagi kuzatuvlarni tanlang.

6. Tahlil qilish SQL Server Profiler ma'lumotlari

6.1 Saqlangan izlarni ochish va ko'rib chiqish

Saqlangan kuzatuv fayllarini quyidagi amallarni bajarib yuklang:

  1. Ishga tushirish SQL Server Profiler.
  2. bosing Fayl -> ochiq -> Kuzatuv fayli.
  3. Kuzatuv fayli joylashgan joyga o'ting.
  4. .trc faylini tanlang va ustiga bosing ochiq.
  5. Kuzatuv ma'lumotlari asosiy oynaga yuklanadi.

Ushbu jarayondan keyin kuzatuv jadvallarini yuklang:

  1. bosing Fayl -> ochiq -> Kuzatuv jadvali.
  2. Kuzatuv jadvalini joylashtirgan serverga ulaning.
  3. dan ma'lumotlar bazasini tanlang ma'lumotlar bazasi ochiladigan ro'yxat.
  4. dan jadvalni tanlang Table ochiladigan ro'yxat.
  5. bosing OK ma'lumotlarni yuklash uchun.

6.2 Trace ma'lumotlarini filtrlash va qidirish

6.2.1 Rasmga tushirilgandan keyingi filtrlash

Quyidagi amallarni bajarib yuklangan kuzatuv maʼlumotlariga filtrlarni qoʻllang:

  1. bosing Edit -> topish yoki tugmasini bosing Ctrl + F.
  2. Qidiruv matnini kiriting Nimani toping maydon.
  3. dan qidirish uchun ustunni tanlang Ichariga qaramoq ochiladigan ro'yxat.
  4. bosing Keyingisini toping mos keladigan hodisalarni topish uchun.

Izlanish ma'lumotlarini toping SQL Server Profiler.

Ustunga asoslangan filtrlash ko'rsatilgan ma'lumotlarni voqealarni qayta yozmasdan aniqlaydi. Har qanday ustun sarlavhasini sichqonchaning o'ng tugmasi bilan bosing va kontekst menyusidan filtr variantlarini tanlang. Faqat mos keladigan qatorlarni ko'rsatish uchun filtr mezonlarini kiriting. Ushbu yondashuv ahamiyatsiz hodisalarni yashirish orqali tahlilni tezlashtiradi.

6.2.2 Muayyan hodisalarni topish

Qidiruv funksiyasi katta kuzatuv fayllaridagi muayyan hodisalarni topishga yordam beradi. Matn mazmuni, hodisa turi yoki ustun qiymati bo'yicha qidirish uchun "Topish" dialog oynasidan foydalaning. Muntazam iboralar kerak bo'lganda murakkab qidiruv naqshlarini faollashtiradi.

Tahlil paytida tezkor ma'lumot olish uchun muhim voqealarni belgilang. Qiziqarli voqealarni o'ng tugmasini bosing va ularni belgilash uchun xatcho'p variantlarini tanlang. Tegishli hodisalarni solishtirishni osonlashtiradigan klaviatura yorliqlari yoki menyu buyruqlari yordamida xatcho'plar o'rtasida harakatlaning.

6.3 Hodisalarni guruhlash va umumlashtirish

Shakllarni aniqlash va faoliyatni umumlashtirish uchun hodisalarni ustun qiymatlari bo'yicha guruhlang. Har qanday ustun sarlavhasini o'ng tugmasini bosing va tanlang Ushbu ustun bo'yicha guruhlash tadbirlarni tashkil etish. Guruhlangan ko‘rinishlar o‘xshash hodisalarni birgalikda yig‘ib, umumiy naqshlarni ko‘rishni osonlashtiradi.

Yigʻilgan koʻrinishlar kuzatuv maʼlumotlarining statistik xulosalarini beradi. Har bir so'rov necha marta bajarilganligini ko'rish uchun TextData bo'yicha guruhlang. Har bir foydalanuvchi faoliyati yakunlarini koʻrish uchun LoginName boʻyicha guruhlang. Agregatsiya hodisalarning batafsil ro'yxatida darhol aniq bo'lmagan naqshlarni ochib beradi.

Muayyan toifalarga chuqurroq kirish uchun guruhlarni kengaytirish va yig'ish. Guruhlangan tadbirlarni ko'rsatish yoki yashirish uchun guruh sarlavhalari yonidagi plyus va minus belgilarini bosing. Ushbu ierarxik ko'rinish yuqori darajadagi naqshlardan boshlab va tafsilotlarga chuqurroq kirishdan boshlab yuqoridan pastga qarab tahlil qilishni osonlashtiradi.

6.4 Izlardan SQL so'rovlarini chiqarish

Quyidagi amallarni bajarib, kuzatuv ma'lumotlaridan so'rovlarni chiqarib oling:

  1. Kuzatuv tarmog'ida qiziqqan so'rovni toping.
  2. Tadbirni tanlash uchun qatorni bosing.
  3. Pastki panelda to'liq so'rov matnini ko'ring.
  4. matbuot Ctrl + A barcha so'rov matnini tanlash uchun.
  5. matbuot Ctrl + C so'rov matnini nusxalash uchun.
  6. Keyingi tahlil qilish uchun so'rovni Management Studio-ga joylashtiring.

Trace hodisasidan SQL so'rovini chiqarib oling.

Ishlash ustunlari bo'yicha tartiblash orqali muammoli so'rovlarni aniqlang. Bajarilish vaqti bo'yicha saralash uchun Davomiylik ustuni sarlavhasini bosing. Eng sekin so'rovlar saralash yo'nalishiga qarab yuqori yoki pastda paydo bo'ladi. Xuddi shunday, resurs talab qiladigan operatsiyalarni aniqlash uchun CPU, o'qish yoki yozish bo'yicha tartiblang.

So'rovlarni izdan so'rov oynalariga nusxalash orqali sinov uchun eksport qiling. Optimallashtirish strategiyalarini sinab ko'rish uchun chiqarilgan so'rovlarni o'zgartiring. Asl va optimallashtirilgan versiyalar o'rtasida ijro rejalari va ishlash ko'rsatkichlarini solishtiring.

6.5 Hodisalarni o'zaro bog'lash va ijro oqimini tushunish

Ota-ona-bola hodisalari munosabatlari ijro ierarxiyalarini ko'rsatadi. SQL:BatchStarting hodisalari ota-ona SQL:StmtStarting hodisalari, bu esa o'z navbatida ota-ona protsedurasini bajarish hodisalari. Ushbu munosabatlarni tushunish kodingiz orqali to'liq ijro yo'llarini kuzatishga yordam beradi.

Tranzaktsiyalarni kuzatish vaqt bo'yicha tegishli voqealarni bog'laydi. Hodisalarni seans bo'yicha guruhlash uchun SPID ustunidan foydalaning. Seans doirasida voqealar xronologik tartibda sodir bo'lib, operatsiyalar ketma-ketligini ko'rsatadi. Ushbu ko'rinish tranzaktsiyalar doirasida turli operatsiyalar qanday o'zaro ta'sir qilishini ochib beradi.

Umumiy ustun qiymatlarini tekshirish orqali hodisalarni o'zaro bog'lang. Xuddi shu seansda bir xil SPIDga ega voqealar sodir bo'ldi. Xuddi shu ApplicationName bilan voqealar bir xil ilovadan kelgan. Murakkab ijro stsenariylarini tushunish uchun ushbu korrelyatsiyalardan foydalaning.

7. Umumiy SQL Server Profilerdan foydalanish holatlari

7.1 Ishlashdagi nosozliklarni bartaraf etish

7.1.1 Sekin so'rovlarni aniqlash

Quyidagi konfiguratsiya yordamida sekin so'rovlarni yozib oling:

  1. yordamida yangi iz yarating TSQL shablon.
  2. In Tadbirlarni tanlash yorlig'i, tasdiqlang SQL: To'plam tugallandi va RPC: Bajarildi tanlangan.
  3. bosing Ustun filtrlari.
  4. tanlang Duration ustunlar ro'yxatidan.
  5. 1000000 ni kiriting Kattaroq yoki teng 1 soniyadan ko'proq vaqt talab qiladigan so'rovlarni olish uchun maydon.
  6. bosing OK va izni boshlang.
  7. Maksimal foydalanish davrida kuzatuvni ishga tushiring.
  8. Eng sekin soʻrovlarni aniqlash uchun kuzatuvni toʻxtating va Davomiylik boʻyicha tartiblang.

Davomiylikka asoslangan tahlil bajarilish vaqtini aniqlaydi. Eng uzoq davom etgan amallarni birinchi bo‘lib ko‘rish uchun yozib olingan voqealarni Davomiylik ustuni bo‘yicha tartiblang. Kechikishlar uchun javobgar bo'lgan haqiqiy so'rovlarni aniqlash uchun ushbu hodisalar uchun TextData ustunini ko'rib chiqing.

CPU va kiritish-chiqarish intensiv so'rovlari turli xil optimallashtirish yondashuvlarini talab qiladi. Algoritmik yaxshilashga muhtoj boʻlgan protsessorga bogʻlangan soʻrovlarni topish uchun CPU ustuni boʻyicha tartiblang. Indekslash yoki so'rovlarni qayta yozishdan foyda ko'radigan kiritish-chiqarish bilan bog'langan so'rovlarni aniqlash uchun o'qish yoki yozish ustunlari bo'yicha tartiblang.

7.1.2 Bloklash va blokirovkalarni aniqlash

Bloklashni aniqlashni quyidagi bosqichlardan keyin sozlang:

  1. Yangi iz yarating.
  2. In Tadbirlarni tanlash yorliq, kengaytirish Qulflar.
  3. tanlang Qulf: o'lik qulf va Qulf: o'lik zanjir.
  4. kengaytirish Xatolar va ogohlantirishlar.
  5. tanlang Bloklangan jarayon hisoboti.
  6. Ustunlarni kiriting: SPID, Matn ma'lumotlari, Ma'lumotlar bazasi nomi, LoginName.
  7. Kuzatuvni boshlang va qulflash hodisalarini kuzatib boring.

Bloklash hodisasi monitoringi dastur ishlashiga ta'sir qiluvchi parallellik muammolarini aniqlaydi. Qulflash: blokirovka hodisalari qachonni bildiradi SQL Server nosozliklarni aniqlash va hal qilish. Lock:Deadlock Chain hodisalari o'liklarni qamrab oladigan jarayonlarni ko'rsatadi.

Tugallanganlik grafiklari boshi berk ko'cha stsenariylarining vizual tasvirini beradi. Tugallanish hodisasi yuz berganda, TextData ustunida blokirovkani tavsiflovchi XML mavjud. Ushbu XML-dan nusxa oling va uni oching SQL Server Menejment Studio qaysi jarayonlar bir-birini bloklaganligini ko'rsatadigan grafik blokirovka diagrammasini ko'rish uchun.

7.1.3 Yetishmayotgan indekslarni topish

Quyidagi qadamlar yordamida indekslarni tahlil qilish uchun ish yukini oling:

  1. yordamida yangi iz yarating Tuning shablon.
  2. Faylga saqlash uchun izni sozlang.
  3. Vakolatli ish yuki davrlarida kuzatuvni bajaring.
  4. Kamida bir necha soatlik faoliyatni to'plang.
  5. Izni to'xtating va faylni saqlang.
  6. Ma'lumotlar bazasi mexanizmini sozlash bo'yicha maslahatchini ishga tushiring.
  7. Ish yuki manbai sifatida kuzatuv faylini tanlang.
  8. Indeks tavsiyalarini olish uchun tahlilni bajaring.

Ma'lumotlar bazasi dvigatelini sozlash bo'yicha maslahatchi bilan integratsiya indeks tavsiyalarini avtomatlashtiradi. Tuning maslahatchisi olingan ish yukini tahlil qiladi va ish faoliyatini yaxshilaydigan indekslarni taklif qiladi. Amalga oshirishdan oldin tavsiyalarni diqqat bilan ko'rib chiqing, saqlash xarajatlari va texnik xizmat ko'rsatish xarajatlarini hisobga oling.

7.2 Ilovada nosozliklarni bartaraf etish

7.2.1 Ilova xatolarini tuzatish

Ushbu konfiguratsiya yordamida dastur xatolarini kuzatib boring:

  1. Yangi iz yarating.
  2. kengaytirish Xatolar va ogohlantirishlar Hodisalarni tanlash yorlig'ida.
  3. tanlang Istisno, Foydalanuvchi xatosi xabariva diqqat.
  4. Ustunlarni kiriting: xato, Matn ma'lumotlari, Ilova nomi, SPID.
  5. Filtrni bo'yicha Ilova nomi ilovangizga e'tibor qaratish uchun.
  6. Kuzatuvni boshlang va xato stsenariysini takrorlang.
  7. Diagnostika ma'lumotlari uchun qayd etilgan xatolik hodisalarini ko'rib chiqing.

Xatolarni kuzatish ko'pincha ilovalardan yashirilgan istisno tafsilotlarini ochib beradi. Xato ustuni mavjud SQL Server xato raqamlari. TextData ustunida xato xabarlari va xatoga sabab bo'lgan so'rov ko'rsatiladi. Jiddiylik ustuni xato jiddiylik darajasini bildiradi.

Istisno monitoringi ish vaqti bilan bog'liq muammolarni, jumladan, cheklovlar buzilishi, ruxsat berish xatolari va vaqt tugashi hodisalarini qamrab oladi. Istisnolarga nima sabab bo'lganini tushunish uchun xato hodisalarini oldingi so'rov hodisalari bilan bog'lang.

7.2.2 Ilovadan ma'lumotlar bazasiga aloqani kuzatish

Quyidagi amallarni bajarib, ilova faolligini kuzatib boring:

  1. yordamida yangi iz yarating Standard shablon.
  2. bosing Ustun filtrlari.
  3. tanlang Ilova nomi va ilovangiz nomini kiriting kabi maydon.
  4. Ixtiyoriy ravishda filtrlang Xost nomi muayyan serverlarni izolyatsiya qilish uchun.
  5. Ilova operatsiyalari paytida kuzatuvni boshlang.
  6. Barcha ma'lumotlar bazasi o'zaro ta'sirini ko'rish uchun olingan voqealarni ko'rib chiqing.

Ilova nomini filtrlash so'rovlarni muayyan ilovalardan ajratib turadi. SQL Server ilova nomini ulanish satrlaridan o'rnatadi, bu ko'p dasturli muhitda alohida ilovalarni kuzatishni osonlashtiradi. Samarali filtrlash uchun ulanish satrida Ilova nomi parametri mavjudligiga ishonch hosil qiling.

Ulanishni kuzatish seansning hayotiy tsiklini, jumladan, kirish, so'rovlarni bajarish va chiqish voqealarini ko'rsatadi. Ulanishni birlashtirish muammolarini aniqlash uchun ulanishni yaratish tezligini kuzatib boring. Haddan tashqari ulanishning uzilishi dastur konfiguratsiyasi bilan bog'liq potentsial muammolarni ko'rsatadi.

7.2.3 Ilova xatti-harakatlarini tekshirish

Kuzatuv tahlili yordamida kutilgan dastur harakatini tasdiqlang. Biznes tranzaktsiyasi davomida ma'lumotlar bazasidagi barcha operatsiyalarni yozib oling va to'g'ri so'rovlar to'g'ri ketma-ketlikda bajarilishini tekshiring. Tafsilotlarni aniqlash uchun haqiqiy olingan so'rovlarni kutilgan xatti-harakatlar bilan solishtiring.

Parametrlarni tekshirish ilovalarning saqlangan protseduralar va parametrlangan so'rovlarga to'g'ri qiymatlarni o'tkazishini ta'minlaydi. Parametr qiymatlarining kutilganlarga mos kelishini tekshirish uchun olingan soʻrov matnini koʻrib chiqing. Noto'g'ri parametrlar ko'pincha noto'g'ri biznes natijalari sifatida namoyon bo'ladigan mantiqiy xatolarga olib keladi.

7.3 Xavfsizlik auditi

7.3.1 Kirish urinishlarini kuzatish

Quyidagi qadamlar yordamida kirish monitoringini sozlang:

  1. Yangi iz yarating.
  2. kengaytirish Xavfsizlik auditi Hodisalarni tanlash yorlig'ida.
  3. tanlang Auditga kirish, Auditdan chiqishva Auditga kirish amalga oshmadi.
  4. Ustunlarni kiriting: LoginName, Xost nomi, Ilova nomi, Boshlanish vaqti.
  5. Autentifikatsiya faoliyatini kuzatish uchun kuzatuvni boshlang.
  6. Mumkin bo'lgan xavfsizlik muammolari uchun muvaffaqiyatsiz kirish voqealarini ko'rib chiqing.

Muvaffaqiyatli va muvaffaqiyatsiz loginlar autentifikatsiyani to'liq kuzatish imkonini beradi. Audit Kirish voqealari foydalanuvchi identifikatori va manba ma'lumotlari bilan muvaffaqiyatli autentifikatsiya urinishlarini qayd etadi. Audit Kirish Muvaffaqiyatsiz hodisalari hujumlar yoki konfiguratsiya muammolarini ko'rsatishi mumkin bo'lgan muvaffaqiyatsiz kirish urinishlarini ko'rsatadi.

Autentifikatsiyani kuzatish ma'lumotlar bazasiga kirish naqshlarini ochib beradi. Noodatiy faoliyatni aniqlash uchun tizimga kirish chastotasini kuzatib boring. Muvaffaqiyatli kirishdan keyin bir nechta muvaffaqiyatsiz kirish urinishlari buzilgan hisob ma'lumotlarini ko'rsatishi mumkin. Kutilmagan joylardan muvaffaqiyatsiz loginlar tekshirishni talab qiladi.

7.3.2 Ma'lumotlarga kirish va o'zgartirishlarni kuzatish

Ushbu konfiguratsiya yordamida ma'lumotlarga kirishni kuzatib boring:

  1. Yangi iz yarating.
  2. kengaytirish Xavfsizlik auditi.
  3. tanlang Ma'lumotlar bazasi ob'ektiga kirishni tekshirish.
  4. Ustunlarni kiriting: Ob'ekt nomi, LoginName, Matn ma'lumotlari, Ma'lumotlar bazasi nomi.
  5. Filtrni bo'yicha Ob'ekt nomi maxsus sezgir jadvallarni kuzatish uchun.
  6. Kirish urinishlarini qayd etish uchun kuzatuvni boshlang.

SELECT, INSERT, UPDATE, DELETE kuzatuvi maʼlumotlarni oʻzgartirishni toʻliq tekshirishni taʼminlaydi. Barcha ma'lumotlarga kirish operatsiyalarini kuzatish uchun tegishli filtrlar bilan SQL: BatchCompleted hodisalarini yozib oling. Nozik jadvallarga e'tibor qaratish uchun ObjectName yoki TextData bo'yicha filtrlang.

Nozik ma'lumotlarga kirish xavfsizlik siyosatiga muvofiqligini ta'minlash uchun ehtiyotkorlik bilan monitoringni talab qiladi. Shaxsiy ma'lumotlar, moliyaviy ma'lumotlar yoki boshqa maxfiy ma'lumotlarni o'z ichiga olgan jadvallar uchun maxsus izlar yarating. Nomaqbul ma'lumotlarga kirishni aniqlash uchun muntazam ravishda kirish usullarini ko'rib chiqing.

7.3.3 Ruxsat etilmagan faoliyatni aniqlash

Olingan izlardagi so'rov namunalarini tahlil qilish orqali shubhali faoliyatni aniqlang. Oddiy dastur xatti-harakatlariga mos kelmaydigan noodatiy so'rovlarni qidiring. Jadvallarni to'liq olinuvchi WHERE bandi bo'lmagan SELECT iboralari ma'lumotlarni o'tkazishga urinishlarni ko'rsatishi mumkin.

Imtiyozlarni oshirishga urinishlar ruxsat berish xatolari yoki ma'muriy buyruqlarni bajarishga urinishlar sifatida namoyon bo'ladi. Tizim jadvallariga kirishga, server konfiguratsiyasini o'zgartirishga yoki imtiyozli hisoblar yaratishga urinayotgan so'rovlarni kuzatib boring. Xato hodisalari uchun filtrlang va shubhali harakat uchun TextData ustunini ko'rib chiqing.

7.4 Imkoniyatlarni rejalashtirish va ish yukini tahlil qilish

Oddiy operatsiyalar paytida vakillik ish yukini qo'lga kiritish orqali asosiy ko'rsatkichlarni o'rnating. Standart faoliyat namunalarini tushunish uchun odatdagi ish soatlarida izlarni bajaring. Kelajakda taqqoslash uchun ushbu izlarni ishlashning asosiy ko'rsatkichlari sifatida saqlang.

Maksimal foydalanish identifikatsiyasi tizimingiz maksimal yuklanishni boshdan kechirayotganini ko'rsatadi. Turli vaqt davrlari, jumladan, ish soatlari, ommaviy ishlov berish oynalari va ish soatlaridan keyingi harakatlar bo'yicha izlarni yozib oling. Voqealar sonini va eng yuqori davrlarni aniqlash uchun resurslar sarfini tahlil qiling.

Resurslardan foydalanish naqshlari ish yukini tahlil qilish natijasida paydo bo'ladi. Kun davomida faoliyat taqsimotini ko'rish uchun voqealarni vaqt oralig'i bo'yicha guruhlang. Resurs iste'molini hisoblash uchun jami protsessor, disk kiritish-chiqarish va davomiylik ko'rsatkichlarini hisoblang. Imkoniyatlarni oshirishni rejalashtirish yoki optimallashtirish imkoniyatlarini aniqlash uchun ushbu ma'lumotlardan foydalaning.

8. Ilg'or SQL Server Profiler texnikasi

8.1 T-SQL yordamida server tomoni izlarini yaratish

8.1.1 sp_trace_create va tegishli protseduralardan foydalanish

T-SQL-da saqlangan protseduralar yordamida dasturli ravishda server tomoni izlarini yarating. Ushbu yondashuv talab qilmasdan avtomatik ravishda iz yaratish va boshqarish imkonini beradi SQL Server Profilerning grafik interfeysi.

Ushbu misol kodidan foydalanib, server tomonidagi izni aniqlang:

  1. Trace ID va fayl yo'li uchun o'zgaruvchilarni e'lon qiling.
  2. Yangi iz yaratish uchun sp_trace_create ga qo'ng'iroq qiling.
  3. Voqealar va ustunlar qo'shish uchun sp_trace_setevent dan foydalaning.
  4. Filtrlarni sozlash uchun ixtiyoriy ravishda sp_trace_setfilter dan foydalaning.
  5. Kuzatuvni boshlash uchun sp_trace_setstatus buyrug'ini chaqiring.

sp_trace_create protsedurasi yangi iz ta'rifini ishga tushiradi. Chiqish fayli yo'lini, maksimal fayl hajmini va ag'darish parametrlarini belgilang. Jarayon trekni sozlash uchun keyingi protsedura chaqiruvlarida ishlatiladigan iz identifikatorini qaytaradi.

Sp_trace_setevent protsedurasidan foydalanib hodisalarni qo'shing. Yozib olmoqchi bo'lgan har bir hodisa-ustun kombinatsiyasi uchun kuzatuv identifikatorini, voqea identifikatorini va ustun identifikatorini belgilang. To'liq iz konfiguratsiyasini yaratish uchun ushbu protsedurani bir necha marta chaqiring.

Filtrlarni sp_trace_setfilter protsedurasi bilan sozlang. Track ID, ustun ID, mantiqiy operator, taqqoslash operatori va filtr qiymatini belgilang. Bir nechta filtr qo'ng'iroqlari murakkab filtr mezonlarini yaratish uchun birlashadi.

Kuzatuvni sp_trace_setstatus ni 1 holat qiymati bilan chaqirib boshlang. Xuddi shu protsedurani 0 holat qiymati bilan chaqirib, izlarni to'xtating. 2 holat qiymati bilan chaqirib, iz ta'riflarini o'chiring.

8.1.2 Server tomonidagi izlarning afzalliklari

Mijozning qisqarishi server tomonidagi izlarni ishlab chiqarish monitoringi uchun ideal qiladi. Ma'lumotlar bazasi serveri barcha kuzatuv operatsiyalarini mijoz mashinasi resurslarini iste'mol qilmasdan boshqaradi. Mijoz ilovasiga hodisalarni uzatish uchun tarmoq tarmoqli kengligi iste'mol qilinmaydi.

Avtomatlashtirilgan bajarish kuzatuvsiz iz to'plash imkonini beradi. Mijoz ulanishi mavjud bo'lmasa ham, server tomonidagi izlar yaratilgandan keyin ishlashda davom etadi. orqali iz yaratishni rejalashtirish SQL Server Avtomatlashtirilgan monitoring uchun agent ishlari.

Kamroq samaradorlik server tomonida ishlov berish natijasida yuzaga keladi. Voqealar to'g'ridan-to'g'ri diskka qo'shimcha ketma-ketlik yoki tarmoq uzatilmasdan yoziladi. Bufer boshqaruvi umumiy ish faoliyatini yaxshilash uchun diskni kiritish/chiqarishni optimallashtiradi.

8.2 Trace Replay Functionality

8.2.1 Takrorlash uchun izlarni olish

Quyidagi amallarni bajarib, takrorlashga tayyor izlarni yarating:

  1. yordamida yangi iz yarating TSQL_Replay shablon.
  2. Barcha kerakli hodisalar va ustunlar tanlanganligini tekshiring.
  3. Faylga saqlash uchun izni sozlang.
  4. Yozib olmoqchi bo'lgan ish yuki davrida kuzatuvni ishga tushiring.
  5. Izni to'xtating va faylni saqlang.

Kerakli hodisalar va ustunlar izni toʻliq takrorlashni taʼminlaydi. TSQL_Replay shabloniga barcha kerakli hodisa turlari va ma'lumotlar ustunlari kiradi. Kerakli elementlarning etishmayotganligi muvaffaqiyatli takrorlashga xalaqit beradi, shuning uchun takrorlash maqsadida suratga olishda har doim ushbu shablondan foydalaning.

8.2.2 Izlarni takrorlash

Quyidagi qadamlar yordamida olingan ish yuklarini takrorlang:

  1. In SQL Server Profiler, bosing Fayl -> ochiq -> Kuzatuv fayli.
  2. Takrorlashga tayyor kuzatuv faylini tanlang.
  3. bosing qayta -> boshlanish.
  4. Qayta ijro etish oynasida maqsadli serverga ulaning.
  5. Takrorlash tartibi va vaqtini o'z ichiga olgan takror ijro etish parametrlarini sozlang.
  6. bosing OK takrorlashni boshlash uchun.
  7. Vaziyat oynasida takrorlash jarayonini kuzatib boring.

Qayta o'ynatish konfiguratsiya parametrlari qanday qilib boshqariladi SQL Server Profiler olingan ish yukini takrorlaydi. Vaqtinchalik munosabatlarni saqlab qolish uchun voqealarni suratga olingan tartibda takrorlang. Asl vaqtni saqlash yoki voqealarni iloji boricha tezroq takrorlashni sozlang.

8.2.3 Trace Replay uchun foydalanish holatlari

Haqiqiy ish yuklarini qayta ishlab chiqarish orqali yuk testi izni takrorlashdan foyda keltiradi. Haqiqiy foydalanish namunalarida ishlashni tekshirish uchun ishlab chiqarish ish yuki izlarini yozib oling va ularni test tizimlariga qarshi takrorlang. Turli yuk darajalarini taqlid qilish uchun parallellik sozlamalarini sozlang.

Atrof-muhit migratsiyasini tekshirish yangi tizimlar mavjud ish yuklarini boshqarishini ta'minlaydi. Joriy ishlab chiqarish tizimlaridan izlarni oling va ularni yangi yoki yangilangan uskunada takrorlang SQL Server versiyalari. Migratsiya samaradorlikni pasaytirmasligini tekshirish uchun unumdorlik koʻrsatkichlarini solishtiring.

Sinov stsenariylari kod o'zgarishlaridan keyin regressiya testini o'z ichiga oladi, optimallashtiruvchi o'zgarishlarni tekshirish SQL Server versiyalari va stress test apparat konfiguratsiyalari. Replay ishonchli sinov uchun izchil, takrorlanadigan ish yuklarini ta'minlaydi.

8.3 SQL Profilerni ma'lumotlar bazasi dvigatelini sozlash bo'yicha maslahatchi bilan integratsiya qilish

Tegishli hodisalar bilan izlarni yozib olish orqali Database Engine Tuning Advisor uchun ish yuki fayllarini yarating. Tahlil qilish uchun barcha kerakli ma'lumotlar olinganligiga ishonch hosil qilish uchun Tyuning shablonidan foydalaning.

Ma'lumotlar bazasi mexanizmini sozlash bo'yicha maslahatchini ishga tushiring va ish yuki manbai sifatida kuzatuv faylingizni tanlang. Maslahatchi olingan so'rovlarni tahlil qiladi va unumdorlikni oshiradigan indekslar, indekslangan ko'rinishlar yoki qismlarga ajratish strategiyalarini tavsiya qiladi.

Ishlash jarayonini optimallashtirish bo'yicha ish jarayoni sozlash tahlili bilan kuzatishni birlashtiradi. Oddiy operatsiyalar davomida vakillik ish yuklarini oling, sozlash bo'yicha maslahatchi bilan tahlil qiling, tavsiyalarni ko'rib chiqing, ishlab chiqishda tavsiya etilgan o'zgarishlarni sinab ko'ring va nihoyat ishlab chiqarishda tasdiqlangan o'zgarishlarni amalga oshiring.

8.4 Izlarni yig'ishni avtomatlashtirish

Foydalanishda izlarni rejalashtirish SQL Server Ma'lumotlarni avtomatik to'plash uchun agent vazifalari. Sp_trace protseduralari yordamida server tomonidagi izlarni aniqlaydigan T-SQL skriptlarini yarating. Ushbu skriptlarni ma'lum vaqt yoki vaqt oralig'ida ishlash uchun rejalashtiring.

PowerShell avtomatizatsiyasi murakkab izlarni boshqarish stsenariylarini amalga oshirish imkonini beradi. Izlarni yaratadigan, ularning holatini kuzatuvchi va to'plangan ma'lumotlarni qayta ishlaydigan PowerShell skriptlarini yozing. PowerShell skriptlarini Task Scheduler orqali rejalashtirish yoki SQL Server Agent.

SQL Server Agent vazifalari ishonchli rejalashtirilgan bajarilishni ta'minlaydi. Monitoring davrlarining boshida kuzatuvlarni boshlaydigan va ma'lumotlar to'plash tugagandan so'ng kuzatuvlarni to'xtatadigan vazifalarni yarating. Administratorlarni nosozliklar haqida ogohlantirish uchun ish bildirishnomalarini sozlang.

8.5 Izlarni dasturli tahlil qilish

Fn_trace_gettable funksiyasidan foydalanib, T-SQL yordamida kuzatuv fayllarini o'qing. Ushbu jadval qiymatli funksiya kuzatuv fayllarini tahlil qiladi va natijalar to'plami sifatida voqea ma'lumotlarini qaytaradi. Maxsus tahlilni amalga oshirish uchun standart T-SQL yordamida ushbu ma'lumotlarni so'rang.

Maxsus tahlil skriptlari kuzatuvlarni avtomatlashtirilgan qayta ishlash imkonini beradi. Umumiy statistikani hisoblaydigan, naqshlarni aniqlaydigan yoki anomaliyalarni belgilovchi so'rovlarni yozing. Ushbu skriptlarni kuzatuv to'plami tugagandan so'ng avtomatik ravishda ishga tushirishni rejalashtiring.

Jadvallarda saqlangan kuzatuv ma'lumotlarini so'rash orqali hisobotlarni yarating. Vaqt davri, foydalanuvchi yoki dastur bo'yicha voqealarni jamlaydigan ko'rinishlarni yarating. Maʼlumotlar bazasi faoliyati va unumdorligi haqida muntazam maʼlumot beruvchi hisobot yechimlarini yarating.

9. SQL Server Profilerning eng yaxshi amaliyotlari

9.1 Ishlash bo'yicha eng yaxshi amaliyotlar

9.1.1 Qo'shimcha xarajatlarni minimallashtirish

Izlanish xarajatlarini kamaytirish uchun faqat kerakli hodisalarni tanlang. Har bir qo'shimcha hodisa turi kuzatuv mexanizmi ishlov berishi kerak bo'lgan ma'lumotlar miqdorini oshiradi. Monitoring maqsadlaringizni ko'rib chiqing va faqat shu maqsadlarga bevosita tegishli voqealarni kiriting.

Ahamiyatsiz ma'lumotlarni yozib olishni oldini olish uchun filtrlardan samarali foydalaning. Tizim ma'lumotlar bazalarini istisno qilish uchun DatabaseName bo'yicha filtrlang. Faqat sekin so'rovlarni yozib olish uchun Davomiyligi bo'yicha filtrlang. Muayyan ilovalarga e'tibor qaratish uchun ApplicationName bo'yicha filtrlang. To'g'ri filtrlash kuzatuv xarajatlarini sezilarli darajada kamaytiradi.

Server tomoni va mijoz tomonidagi mulohazalar ishlashga ta'sir qiladi. Server tomonidagi izlar ma'lumotlarni to'g'ridan-to'g'ri diskka minimal yuk bilan yozadi. Mijoz tomonidagi izlar hodisalarni tarmoq orqali Profiler interfeysiga uzatib, kechikish va tarmoqli kengligi sarfini oshiradi. Ishlab chiqarish monitoringi uchun server tomoni izlaridan foydalaning.

9.1.2 Trace saqlashni optimallashtirish

Fayl o'lchamini boshqarish diskdagi bo'sh joyni to'ldirishni oldini oladi. Mavjud xotiraga mos keladigan maksimal fayl hajmi chegaralarini o'rnating. Bitta faylni cheksiz o'stirish o'rniga bir nechta fayl yaratish uchun fayllarni aylantirishni yoqing. Kuzatuvni bajarish paytida disk maydonini kuzatib boring.

Jadval va fayllarni saqlash turli xil ishlash ko'rsatkichlarini o'z ichiga oladi. Fayl xotirasi kuzatuvni bajarish vaqtida yaxshiroq ishlashni taklif qiladi, chunki u saqlash mexanizmini chetlab o'tadi. Jadvalni saqlash T-SQL so'rovlarini kuzatuv ma'lumotlariga qarshi beradi, lekin yozish uchun qo'shimcha xarajatlarni qo'shadi. Tahlil talablaringiz asosida saqlash turini tanlang.

9.2 Xavfsizlikning eng yaxshi amaliyotlari

Ruxsatlarni boshqarish kimlar iz yaratishi va ishga tushirishi mumkinligini nazorat qiladi. ALTER TRACE ruxsatini faqat kuzatuv qobiliyatiga muhtoj ishonchli foydalanuvchilarga bering. Tizim boshqaruvchisi roli a'zolari cheklanmagan kuzatuvga ega. Muntazam ravishda kuzatuv ruxsatlarini ko'rib chiqing va tekshiring.

Nozik ma'lumotlarni himoya qilish diqqatli iz konfiguratsiyasini talab qiladi. Nozik ma'lumotlar bilan ishlashda to'liq so'rov matnini olishdan saqlaning. Maxfiy ma'lumotlarni o'z ichiga olgan kuzatuv chiqishini filtrlash yoki shifrlashni ko'rib chiqing. Tegishli kirish boshqaruvlari bilan kuzatuv fayllarini xavfsiz joylarda saqlang.

Kuzatuv fayli xavfsizligi olingan ma'lumotlarga ruxsatsiz kirishni oldini oladi. Kuzatuv fayllariga kirishni cheklash uchun fayl ruxsatlarini o'rnating. Agar ularda maxfiy ma'lumotlar bo'lsa, kuzatuv fayllarini shifrlang. Ta'sir qilish xavfini kamaytirish uchun tahlil tugagandan so'ng kuzatuv fayllarini o'chiring.

9.3 Ishlab chiqarish muhiti bo'yicha mulohazalar

9.3.1 Ishlab chiqarishda Profilerdan qachon foydalanish kerak

Xatarlarni baholash qachon bo'lishini aniqlaydi SQL Server Profiler ishlab chiqarishda foydalanish uchun mos keladi. Profiler kuzatuv doirasi bilan ortib boradigan o'lchanadigan qo'shimcha xarajatlarni kiritadi. Ishlab chiqarish kuzatuvlarini ishga tushirishdan oldin diagnostika qiymati ishlashga ta'sirini oqlashini baholang.

Minimal ta'sir konfiguratsiyasi xavfsizroq ishlab chiqarishni kuzatish imkonini beradi. Faqat muhim voqealarni yozib olish uchun yuqori tanlangan filtrlardan foydalaning. Tez bajariladigan so'rovlarni e'tiborsiz qoldirish uchun Davomiylik chegaralarini o'rnating. Muammolarni bartaraf etish sessiyalarida kuzatuv davomiyligini qisqa muddatlar bilan cheklang. Mijoz yukini kamaytirish uchun server tomoni izlarini sozlang.

9.3.2 Ishlab chiqarish monitoringi uchun alternativalar

Kengaytirilgan hodisalar ishlab chiqarish monitoringi uchun kamroq qo'shimcha xarajatlarni ta'minlaydi. Ushbu zamonaviy texnologiya yanada yaxshi ishlash va moslashuvchanlikni taklif etadi SQL Server Profiler. Uzoq muddatli ishlab chiqarishda foydalanish uchun monitoring yechimlarini Extended Events dasturiga o'tkazing.

Query Store soʻrovlar samaradorligi maʼlumotlarini qoʻlda kuzatish konfiguratsiyasisiz avtomatik ravishda qayd etadi. Soʻrovlar bajarilishi statistikasini vaqt oʻtishi bilan kuzatib borish uchun ishlab chiqarish maʼlumotlar bazalarida Query Store’ni yoqing. Query Store kuzatuvning qoʻshimcha xarajatlarisiz koʻpgina ishlashni kuzatish imkoniyatlarini taqdim etadi.

Dynamic Management Views muayyan stsenariylar uchun engil monitoringni taklif qiladi. DMVlar tarixiy voqealarni saqlamasdan joriy holat ma'lumotlarini taqdim etadi. Doimiy kuzatuvlarsiz server holatini kuzatish uchun vaqti-vaqti bilan DMVlarni so'rang.

9.4 Trace Management eng yaxshi amaliyotlari

Nomlash qoidalari kuzatuv fayllarini aniqlash va tartibga solishni ta'minlaydi. Kuzatuv fayl nomlariga sana, vaqt, server nomi va maqsadni kiriting. Boshqaruv va tahlilni osonlashtirish uchun barcha izlar bo'ylab izchil nomlash naqshlaridan foydalaning.

Hujjatlar kuzatuv konfiguratsiyasi va maqsadini qayd etadi. Qaysi voqealarni suratga olganingizni, nima uchun izni yaratganingizni va tahlildan nimani o'rganganingizni hujjatlang. Muvofiqlik va muammolarni bartaraf etish uchun ishlab chiqarish tizimlariga qarshi ish izlari jurnalini yuriting.

Saqlash siyosati iz faylining ortiqcha to'planishini oldini oladi. Biznes talablari va saqlash hajmiga qarab kuzatuv fayllari qancha vaqt saqlanishi kerakligini aniqlang. Diskda bo'sh joyni bo'shatish uchun eski kuzatuv fayllarini o'chirishni avtomatlashtiring. O'chirishdan oldin uzoq muddatli saqlash uchun muhim izlarni arxivlang.

Qochish kerak bo'lgan 9.5 ta keng tarqalgan xato

Haddan tashqari kuzatuv ortiqcha unumdorlikka olib keladi va boshqarib bo'lmaydigan ma'lumotlar hajmini yaratadi. Barcha hodisalarni filtrlarsiz yozib olishdan saqlaning. Tor, diqqat markazida bo'lgan kuzatuvlardan boshlang va faqat kerak bo'lganda ko'lamni kengaytiring. Samarali muammolarni bartaraf etish uchun har doim ham ko'proq ma'lumot yaxshiroq emas.

To'xtatishni unutish izlarni yo'qotadi va disk maydonini to'ldiradi. Monitoring tugagach, har doim izlarni to'xtating. Qochqin izlarning oldini olish uchun iz davomiyligi chegaralarini yoki maksimal fayl hajmini o'rnating. Ishlayotgan izlarni muntazam ravishda kuzatib boring va nofaol yoki keraksiz izlarni to'xtating.

Filtrni optimallashtirishni e'tiborsiz qoldirish yomon ishlashga va tahlil qilishning qiyinligiga olib keladi. Kuzatuvlarni boshlashdan oldin samarali filtrlarni sozlashga vaqt ajrating. Kutilgan ma'lumotlarni olishlarini tekshirish uchun filtrlarni ishlab chiqish muhitida sinab ko'ring. Olingan natijalar asosida filtrlarni ko'rib chiqing va takomillashtiring.

10. Muqobillar SQL Server Profiler 2025 yilda

10.1 Kengaytirilgan voqealar: zamonaviy almashtirish

10.1.1 Kengaytirilgan hodisalar nima

Kengaytirilgan hodisalar ifodalaydi SQL Serverning zamonaviy hodisalarni boshqarish arxitekturasi. Microsoft ushbu tizimni hal qilish uchun maxsus ishlab chiqdi SQL Server Profilerning cheklovlari, shu jumladan unumdorlik va konfiguratsiya moslashuvchanligi. Kengaytirilgan hodisalar resurslarni sezilarli darajada kam sarflagan holda keng qamrovli monitoring imkoniyatlarini taqdim etadi.

Arxitektura va imtiyozlar kengaytirilgan hodisalarni eski kuzatuv texnologiyalaridan ajratib turadi. Voqea mexanizmi chuqur integratsiyalashgan SQL Serverning asosiy arxitekturasi, minimal qo'shimcha xarajatlar bilan hodisalarni yozib oladi. Asinxron hodisalarni buferlash monitoringning ma'lumotlar bazasi operatsiyalarini bloklashiga yo'l qo'ymaydi. Moslashuvchan nishonga olish imkoniyatlari turli xil chiqish konfiguratsiyalarini ta'minlaydi.

Ishlash afzalliklari Extended Events ni ishlab chiqarish monitoringi uchun ideal qiladi. Benchmarklar Kengaytirilgan tadbirlarni ekvivalentiga qaraganda 50-90% kamroq qo'shimcha xarajatlarni taqdim etadi SQL Server Profiler izlari. Arxitektura tadbirlarning yuqori hajmlari bilan yaxshilanadi va bir vaqtning o'zida ko'proq monitoring seanslarini qo'llab-quvvatlaydi.

10.1.2 Profilerdan kengaytirilgan hodisalarga o'tish

Voqealarni xaritalash tarjima qiladi SQL Server Profiler hodisalari kengaytirilgan hodisalar ekvivalentlariga teng. Ko'pgina Profiler hodisalari mos keladigan kengaytirilgan hodisalar analoglariga ega. Microsoft ikki tizim o'rtasidagi umumiy hodisalarni xaritalash bo'yicha hujjatlarni taqdim etadi.

Kengaytirilgan tadbirlarda sessiya yaratish yangi sintaksis va tushunchalarni o'rganishni talab qiladi. T-SQL CREATE EVENT SESSION bayonotlari yoki Management Studio'da Kengaytirilgan hodisalar grafik interfeysi yordamida hodisa seanslarini aniqlang. Seanslar qaysi hodisalarni yozib olish, qanday ma'lumotlarni to'plash va natijalarni qayerda saqlashni belgilaydi.

10.1.3 Kengaytirilgan hodisalar vositalari va interfeyslari

SSMS Kengaytirilgan Voqealar UI grafik seans boshqaruvini ta'minlaydi. Object Explorer-dagi boshqaruv papkasi orqali kengaytirilgan hodisalarga kiring. Interfeys orqali hodisa seanslarini yarating, o'zgartiring va kuzatib boring. Olingan ma'lumotlarni grafik formatlarda, jumladan, to'r va diagrammalarda ko'ring.

T-SQL seansini boshqarish dasturli kengaytirilgan hodisalarni boshqarish imkonini beradi. Seanslarni kodda aniqlash uchun CREATE EVENT SESSION iboralarini yozing. Ishlayotgan seanslarni o'zgartirish uchun ALTER EVENT SESSION-dan foydalaning. DROP EVENT SESSION bilan seanslarni tashlash. Ushbu yondashuv avtomatlashtirilgan monitoring echimlarini osonlashtiradi.

10.2 SQL Server So'rovlar do'koni

So'rovlar do'koni yoqilgan ma'lumotlar bazalari uchun so'rovlar samaradorligi ma'lumotlarini avtomatik ravishda yozib oladi. Bu xususiyat so'rov rejalarini, bajarilish statistikasini va vaqt davomida ishlash ko'rsatkichlarini qo'lda kuzatuv konfiguratsiyasisiz kuzatib boradi. Query Store trend tahlili va regressiyani aniqlash imkonini beruvchi tarixiy ma'lumotlarni saqlaydi.

So'rovlar do'koni orqali real vaqtda so'rovlar ishlashi monitoringi joriy tizim xatti-harakatlarini ochib beradi. Yaqinda bajarilgan so'rovlarni, ularni bajarish rejalarini va resurslar iste'molini ko'ring. Muammolarni ko'rsatishi mumkin bo'lgan davomiylik yoki ijro rejalarini o'zgartiradigan so'rovlarni aniqlang.

Tarixiy so'rovlarni tahlil qilish vaqt oralig'ida taqqoslash imkonini beradi. So'rovlar do'koni sozlanishi mumkin bo'lgan saqlash muddatlari uchun ishlash ma'lumotlarini saqlaydi. Regressiyalarni aniqlash uchun joriy ish faoliyatini tarixiy ko'rsatkichlar bilan solishtiring. Kelajakdagi quvvat ehtiyojlarini bashorat qilish uchun ishlash tendentsiyalarini tahlil qiling.

Avtomatik, doimo yoqilgan ishlash monitoringi kerak bo'lganda Query Store dan foydalaning. So'rovlar harakatini doimiy kuzatish uchun ishlab chiqarish ma'lumotlar bazalarida So'rovlar do'konini yoqing. So'rovlar do'koni ishlash muammolari uchun tarixiy kontekstni taqdim etish orqali izga asoslangan muammolarni bartaraf qilishni to'ldiradi.

10.3 Dinamik boshqaruv ko‘rinishlari (DMVs)

DMVs orqali engil monitoring tarixiy voqealarni suratga olmasdan joriy holat haqida ma'lumot beradi. DMVlar ichki ma'lumotlarni ochib beradi SQL Server so'rovli ko'rinishlar orqali statistika va metama'lumotlar. Standart T-SQL SELECT iboralari yordamida DMV-larni so'rang.

Ishlash monitoringi uchun keng tarqalgan DMV soʻrovlariga soʻrovlar unumdorligi statistikasi uchun sys.dm_exec_query_stats, hozir bajarilayotgan soʻrovlar uchun sys.dm_exec_requests va kutish statistikasi uchun sys.dm_os_wait_stats kiradi. Ushbu ko'rinishlar serverning sog'lig'i va faoliyati haqida bir vaqtning o'zida tushuncha beradi.

DMVlar real vaqtda o'lchovlarni taqdim etish orqali kuzatuvga asoslangan monitoringni to'ldiradi. Tez tibbiy tekshiruvlar va joriy holatni tahlil qilish uchun DMVlardan foydalaning. Muammolarni hal qilishning keng qamrovli yondashuvlari uchun DMV so'rovlarini kuzatuv ma'lumotlari bilan birlashtiring.

10.4 Uchinchi tomon monitoringi vositalari

Tijoriy alternativalar kengaytirilgan monitoring imkoniyatlarini taklif qiladi SQL Serverning o'rnatilgan vositalari. SolarWinds, Redgate va Quest kabi sotuvchilarning mahsulotlari keng qamrovli monitoring, ogohlantirish va tahlil xususiyatlarini taqdim etadi. Ushbu vositalar ko'pincha izlar, DMVlar va ishlash hisoblagichlarini o'z ichiga olgan bir nechta ma'lumot manbalarini birlashtiradi.

Xususiyatlarni taqqoslash turli xil monitoring yondashuvlarining kuchli tomonlarini ochib beradi. Uchinchi tomon vositalari yuqori foydalanuvchi interfeyslari, avtomatlashtirilgan ogohlantirishlar va tarixiy tendentsiyalarni ta'minlaydi. SQL Serverning o'rnatilgan vositalari qo'shimcha xarajatlarsiz va chuqurroq integratsiyani taklif qiladi. Asboblarni o'zingizning aniq talablaringiz va byudjetingiz asosida baholang.

10.5 Sizning ehtiyojlaringiz uchun to'g'ri vositani tanlash

Qaror matritsasi tegishli monitoring vositalarini tanlashga yordam beradi. Vaqtinchalik muammolarni bartaraf etish uchun, SQL Server Profiler hali ham mavjud va samarali. Ishlab chiqarishni monitoring qilish uchun kengaytirilgan tadbirlar yoki so'rovlar do'koni yaxshiroq ishlashni ta'minlaydi. Korxonani kompleks monitoring qilish uchun uchinchi tomon yechimlari eng ko'p funksiyalarni taklif qiladi.

Asbobni tanlash mezonlari ishlashga qo'shimcha xarajatlar, foydalanish qulayligi, ma'lumotlarni saqlash talablari va byudjet cheklovlarini o'z ichiga oladi. Asboblarni tanlashda jamoangizning tajribasini hisobga oling. Tanish vositalar, hatto yangi muqobillar yaxshiroq funksiyalarni taklif qilsa ham, muammolarni tezroq bartaraf etishga imkon beradi.

Keng qamrovli monitoring strategiyalari uchun bir nechta vositalarni birlashtiring. Uzluksiz ishlashni kuzatish uchun Query Store'dan, muayyan muammolarni tekshirish uchun kengaytirilgan hodisalardan va real vaqt rejimida sog'liqni tekshirish uchun DMVlardan foydalaning. Ushbu qatlamli yondashuv ortiqcha xarajatlarsiz ishonchli monitoringni ta'minlaydi.

11. Muammolarni bartaraf qilish; nosozliklarni TUZATISH SQL Server Profiler bilan bog'liq muammolar

11.1 Umumiy ulanish muammolari

Autentifikatsiya xatosi oldini oladi SQL Server Profiler maqsadli serverlarga ulanishdan chiqmoqda. Tanlangan autentifikatsiya usuli uchun to'g'ri hisob ma'lumotlaridan foydalanayotganingizni tasdiqlang. Windows autentifikatsiyasi sizning Windows hisobingizning tegishli ma'lumotlarga ega bo'lishini talab qiladi. SQL Server ruxsatlar. SQL Server Autentifikatsiya uchun yaroqli SQL login hisob ma'lumotlari talab qilinadi.

Tarmoqqa ulanish bilan bog'liq muammolar vaqt tugashi xatosi yoki ulanishdagi nosozliklar sifatida namoyon bo'ladi. Tasdiqlash SQL Server konfiguratsiyasida masofaviy ulanishga imkon beradi. Trafikni yoqish uchun xavfsizlik devori sozlamalarini tekshiring SQL Serverning porti. Profiler bilan bog'liq muammolarni bartaraf etishdan oldin ping va telnet yordamida asosiy ulanishni sinab ko'ring.

11.2 Profiler bilan ishlash muammolari

Sekin kuzatuv bajarilishi kuzatuv konfiguratsiyasidan ortiqcha yukni bildiradi. Tanlangan voqealarni ko'rib chiqing va keraksizlarini yo'q qiling. Rasmga tushirilgan voqea hajmini kamaytirish uchun filtrlar qo'shing. Mijoz tomonidan ishlov berish yukini kamaytirish uchun server tomoni izlaridan foydalanishni o'ylab ko'ring.

Yuqori resurs iste'moli ikkalasiga ham ta'sir qiladi SQL Server va Profiler mijozi. Kuzatuv bajarilishi davomida server protsessorini va xotirasini kuzatib boring. Agar server resurslari cheklangan bo'lsa, filtr tanlanishini oshiring yoki yozib olish muddatini qisqartiring. Mijoz manbalari bilan bog'liq muammolar boshqa ilovalarni yopish yoki mijoz uskunasini yangilashni talab qiladi.

11.3 Fayl va jadval muammolarini kuzatish

Buzilgan iz fayllari kirishni oldini oladi SQL Server Profiler. Buzilish, odatda, izni noto'g'ri tugatish yoki diskdagi xatolardan kelib chiqadi. Fayl butunlay buzilmaganligini tekshirish uchun uni matn muharririda ochishga harakat qiling. Ba'zan ma'lumotlarni fn_trace_gettable yordamida jadvalga import qilish orqali qisman tiklash mumkin.

Jadvalga kirish bilan bog'liq muammolar izlarni yuklashga urinayotganda yuzaga keladi SQL Server jadvallar. Kuzatuv jadvalida SELECT ruxsatingiz borligini tasdiqlang. Jadval tushirilmagan yoki nomi o'zgartirilmaganligini tekshiring. Kuzatuv jadvalini o'z ichiga olgan to'g'ri server va ma'lumotlar bazasiga ulanganingizga ishonch hosil qiling.

11.4 Yo'qolgan hodisalar yoki to'liq bo'lmagan ma'lumotlar

Filtrning noto'g'ri konfiguratsiyasi kuzatuvlarning kutilgan hodisalarni o'tkazib yuborishiga olib keladi. Kerakli hodisalarni chiqarib tashlamasligiga ishonch hosil qilish uchun filtr mezonlarini diqqat bilan ko'rib chiqing. Qisqa kuzatuvlarni ishga tushirish va olingan ma'lumotlarning kutilgan natijalarga mos kelishini tekshirish orqali filtrlarni sinab ko'ring. Muammoni keltirib chiqarayotganini aniqlash uchun filtrlarni vaqtincha olib tashlang.

Bufer to'lib ketishi qachon sodir bo'ladi SQL Server hodisalarni yaratishda davom etish uchun kuzatuv ma'lumotlarini etarlicha tez yoza olmaydi. Bu odatda yuqori faollik paytida filtrlanmagan izlar bilan sodir bo'ladi. Semptomlar etishmayotgan hodisalar yoki "Voqealar yozib olinmadi" ogohlantirishlarini o'z ichiga oladi. Voqea hajmini kamaytirish yoki kuzatuv fayli joylashuvi diskining kirish/chiqarish ish faoliyatini oshirish uchun filtrlar qoʻshish orqali hal qiling.

11.5 Profilerning ishdan chiqishi va xatolari

Umumiy xato xabarlari ruxsat muammolari yoki resurs cheklovlarini ko'rsatadigan "Iz yaratib bo'lmadi" ni o'z ichiga oladi. "Kuzatuv to'xtatildi" xabarlari, ehtimol, diskning to'liq sharoitlaridan kelib chiqqan holda, server tomonida kuzatuv xatolarini ko'rsatadi. “Noto'g'ri iz ta'rifi” xatolar konfiguratsiya muammolarini ko'rsatadi.

Yechim strategiyalari aniq xatoga bog'liq. Ruxsat xatolari foydalanuvchiga ALTER TRACE ruxsatini berishni talab qiladi. Resurs xatolari bo'sh disk maydoni yoki xotirani talab qiladi. Konfiguratsiya xatolari kuzatuv sozlamalarini ko'rib chiqish va tuzatishni talab qiladi. Qayta ishga tushiring. SQL Server Agar u javob bermasa profiler.

12. Amaliy SQL Server Profiler stsenariylari va misollar

12.1 Stsenariy 1: Ma'lumotlar bazangizdagi eng sekin so'rovlarni aniqlash

Ushbu ko'rsatma sekin so'rovlarni yozib olish va tahlil qilishni ko'rsatadi.

Quyidagi amallarni bajarib, izni sozlang:

  1. Ishga tushirish SQL Server Profilerni ishga tushiring va maqsadli serveringizga ulaning.
  2. bosing Fayl -> Yangi iz.
  3. "Sekin so'rovlar tahlili" ni kiriting Iz nomi maydon.
  4. tanlang TSQL dan Shablondan foydalaning ochiladigan ro'yxat.
  5. bosing Tadbirlarni tanlash yorlig'ini bosing.
  6. bosing Ustun filtrlari.
  7. tanlang Duration va 1000000 dyuymni kiriting Kattaroq yoki teng.
  8. tanlang Ma'lumotlar bazasi nomi va ma'lumotlar bazasi nomini kiriting kabi.
  9. bosing OK filtrlarni yopish uchun.
  10. yoqish Faylga saqlang va fayl yo'lini belgilang.
  11. bosing yugurish suratga olishni boshlash uchun.

Vakolatli ish yukini olish uchun kamida 30 daqiqa davomida eng yuqori ish soatlarida kuzatuvni bajaring. Etarlicha ma'lumot to'plangandan keyin izni to'xtating.

Ushbu jarayondan keyingi natijalarni tahlil qiling:

  1. bosing Duration bajarilish vaqti bo'yicha saralash uchun ustun sarlavhasi.
  2. Eng uzoq davom etuvchi 10 ta soʻrovni aniqlang.
  3. Har bir so'rov uchun ni tekshiring Matn ma'lumotlari ustun.
  4. So'rov matnidan nusxa oling va Management Studio-ga joylashtiring.
  5. foydalanish Taxminiy ijro rejasini ko'rsatish so'rovni tahlil qilish uchun.
  6. Jadvalni skanerlash, etishmayotgan indekslar yoki samarasiz birlashmalarni qidiring.
  7. Review Markaziy protsessor, o'qiydiva Yozadi resurslarni iste'mol qilish naqshlari uchun ustunlar.

12.2 2-stsenariy: O'lik muammosini tuzatish

Ushbu misol, o'liklarni qanday tutish va tahlil qilishni ko'rsatadi.

Quyidagi qadamlar yordamida blokirovka monitoringini sozlang:

  1. "O'tkir tergov" nomli yangi iz yarating.
  2. bosing Tadbirlarni tanlash yorlig'ini bosing.
  3. bosing Barcha voqealarni ko'rsatish.
  4. kengaytirish Qulflar Turkum.
  5. tanlang Qulf: o'lik qulf.
  6. tanlang Qulf: o'lik zanjir.
  7. kengaytirish Xatolar va ogohlantirishlar Turkum.
  8. tanlang Bloklangan jarayon hisoboti.
  9. ta'minlash Matn ma'lumotlari ustun tanlangan.
  10. bosing yugurish monitoringni boshlash uchun.

Izni bajarish vaqtida blokirovka sodir bo'lganda, Lock:Deadlock hodisasi kuzatuv panjarasida paydo bo'ladi.

Tugallanish ma'lumotlarini quyidagi bosqichlardan keyin talqin qiling:

  1. bosing Qulf: o'lik qulf voqea qatori.
  2. ko'rish Matn ma'lumotlari pastki paneldagi ustun.
  3. TextData'dan XML tarkibini nusxalash.
  4. Management Studio-ni oching va yangi so'rovlar oynasini yarating.
  5. XML-ni so'rovlar oynasiga joylashtiring.
  6. Faylni .xdl kengaytmasi bilan saqlang.
  7. O'chirish grafigini ko'rish uchun Management Studio'da .xdl faylini oching.
  8. Grafikda jarayonlar, qulflangan resurslar va tanlangan jabrlanuvchi ko'rsatilgan.
  9. Qarama-qarshilikni tushunish uchun ikkala jarayonning so'rovlarini ko'rib chiqing.

Yechim bosqichlari odatda resurslarga izchil tartibda kirish uchun dastur kodidagi operatsiyalarni qayta tartiblashni, tranzaktsiyalar hajmini qisqartirishni yoki tegishli blokirovka bo'yicha maslahatlarni amalga oshirishni o'z ichiga oladi.

12.3 3-stsenariy: Muayyan ilovadan barcha so'rovlarni kuzatish

Ushbu stsenariy ilovaga xos so'rovlar monitoringini namoyish etadi.

Quyidagi qadamlar yordamida ilovaga xos kuzatuvni sozlang:

  1. "Ilova so'rovlarini kuzatish" nomli yangi iz yarating.
  2. Tanlang Standard shablon.
  3. bosing Tadbirlarni tanlash yorlig'ini bosing.
  4. bosing Ustun filtrlari.
  5. tanlang Ilova nomi.
  6. Ilova nomini kiriting kabi maydon.
  7. Agar ilovangiz ulanishni birlashtirishdan foydalansa, sizga joker belgilar mos kelishi kerak bo'lishi mumkin.
  8. bosing OK filtrni qo'llash uchun.
  9. yoqish Jadvalga saqlash osonroq so'rov qilish uchun.
  10. bosing yugurish suratga olishni boshlash uchun.

So'rov namunasi tahlili ilovangiz bilan qanday o'zaro ta'sir qilishini ko'rsatadi SQL Server:

  1. Ma'lumot to'plangandan so'ng, izni to'xtating.
  2. Management Studio-ni oching va kuzatuv jadvali bilan serverga ulaning.
  3. Naqshlarni tahlil qilish uchun kuzatuv jadvalini so'rang.
  4. Operatsiyalar aralashmasini ko'rish uchun so'rovlarni turlari bo'yicha hisoblang.
  5. Eng ko'p bajariladigan so'rovlarni aniqlang.
  6. Keshlangan yoki optimallashtirilgan so'rovlarni qidiring.
  7. Ulanishni birlashtirish yo'qligini ko'rsatadigan takroriy bir xil so'rovlarni tekshiring.

12.4 4-stsenariy: Muvofiqlik uchun ma'lumotlarga kirishni tekshirish

Ushbu misol xavfsizlik tekshiruvi izi yaratilishini ko'rsatadi.

Quyidagi amallarni bajarib, xavfsizlik auditini sozlang:

  1. “Xavfsizlik auditi izi” nomli yangi iz yarating.
  2. bosing Tadbirlarni tanlash yorlig'ini bosing.
  3. bosing Barcha voqealarni ko'rsatish.
  4. kengaytirish Xavfsizlik auditi Turkum.
  5. tanlang Auditga kirish, Auditdan chiqish, Auditga kirish amalga oshmadi.
  6. tanlang Ma'lumotlar bazasi ob'ektiga kirishni tekshirish.
  7. kengaytirish TSQL Turkum.
  8. tanlang SQL: To'plam tugallandi.
  9. bosing Ustun filtrlari.
  10. Filtrni bo'yicha Ob'ekt nomi maxsus sezgir jadvallarni kuzatish uchun.
  11. yoqish Jadvalga saqlash uzoq muddatli saqlash uchun.
  12. Qarovsiz ishlash uchun server tomonidagi kuzatuvni yoqing.
  13. bosing yugurish auditni boshlash uchun.

Kuzatuv jadvalini so'rash orqali audit hisobotlarini yarating:

  1. Foydalanuvchi va vaqt oralig'i bo'yicha kirishni jamlagan so'rovlarni yarating.
  2. G'ayrioddiy kirish usullarini yoki ish soatlaridan keyingi faoliyatni aniqlang.
  3. Xavfsizlik tekshiruvi uchun kirish urinishlari muvaffaqiyatsiz tugadi.
  4. Audit ma'lumotlarini muvofiqlik hujjatlari uchun hisobot tizimlariga eksport qiling.
  5. Tugallangan audit izlarini saqlash qoidalariga muvofiq arxivlash.

12.5 5-stsenariy: samaradorlikni tekshirish uchun ish yukini olish

Ushbu stsenariy sinov maqsadlarida ish yukini ushlab turishni ko'rsatadi.

Quyidagi qadamlar yordamida takrorlashga tayyor izlarni yarating:

  1. “Ish yukini yozib olish” nomli yangi iz yarating.
  2. tanlang TSQL_Replay shablonning ochiladigan menyusidan.
  3. Ushbu shablonda takrorlash uchun barcha kerakli voqealar va ustunlar mavjud.
  4. bosing Tadbirlarni tanlash yorlig'ini bosing.
  5. Muayyan ish yuki segmentlarini suratga olishni istasangiz, filtrlarni qo'llang.
  6. yoqish Faylga saqlang.
  7. Diskda etarli joy bo'lgan fayl yo'lini belgilang.
  8. Tegishli fayl hajmi chegaralarini o'rnating va rolloverni yoqing.
  9. bosing yugurish suratga olishni boshlash uchun.

Vakillik biznes operatsiyalari davomida qo'lga olish. Har tomonlama ish yukini yozib olish uchun turli faoliyat modellarini qamrab olgan holda bir necha soat davomida kuzatuvni bajaring. Etarli ma'lumot to'plangandan keyin izni to'xtating.

Ish yukini tahlil qilish tizimning xatti-harakatlarini aniqlaydi:

  1. Olingan kuzatuv faylini oching SQL Server Profiler.
  2. Hodisalarni turi va vaqti bo'yicha taqsimlashni ko'rib chiqing.
  3. Resurslarning umumiy iste'moli ko'rsatkichlarini hisoblang.
  4. Faoliyatning eng yuqori davrlarini va resurs muammolarini aniqlang.
  5. Ma'lumotlar bazasi mexanizmini sozlash bo'yicha maslahatchi tahlili uchun izdan foydalaning.
  6. O'zgarishlarni tasdiqlash uchun test tizimlariga qarshi izni takrorlang.

13. Ma'lumotlar bazasi korruptsiyasini aniqlash SQL Server Profil

13.1 Foydalanish SQL Server Korruptsiyaning dastlabki ogohlantirish belgilari uchun profiler

Ma'lumotlar bazasining buzilishi ma'lumotlar yaxlitligi va tizim ishonchliligiga eng jiddiy tahdidlardan birini ifodalaydi. SQL Server Profiler korruptsiyani aniqlashning maxsus vositasi emas, u zudlik bilan tekshirishni talab qiladigan korruptsiya bilan bog'liq potentsial muammolarni ko'rsatadigan muhim ogohlantirish belgilarini olishi mumkin.

13.2 Potentsial korruptsiyani ko'rsatuvchi muhim xato hodisalari

  • Jiddiy 24 xatolar (823, 824, 825): Uskuna va media nosozliklari.
  • Xato 605: Sahifani qidirishda muvaffaqiyatsiz urinishlar
  • Xato 8928 va 8929: ob'ektning buzilishi

13.3 Ma'lumotlar bazasining shubhali xatti-harakatlari va ogohlantirish namunalari

  • Muayyan ob'ektlar bo'yicha takroriy so'rovlar kutish vaqti
  • Kirish buzilishi va ilovalarning ishdan chiqishi
  • Noodatiy xato klasterlash

13.4 Profiler natijalari asosida DBCC CHECKDB ni ishga tushiring

If SQL Server Profiler shubhali buzilishlarni aniqladi, siz ma'lumotlar bazasini to'liq tekshirish uchun DBCC CHECKDB dan foydalanishingiz mumkin. Keyin buzilishlar tasdiqlansa, ta'mirlashni amalga oshiring. Biz yozdik bu vazifalarni qanday bajarish bo'yicha keng qamrovli qo'llanma.

Agar DBCC CHECKDB ma'lumotlar bazasini tuzatmasa, buzilishlar jiddiydir. Bunday holda, siz murojaat qilishingiz mumkin uchinchi tomon SQL tiklash vositasi.

14. Savol-javoblar

Savol: shunday SQL Server Profiler hali ham qo'llab-quvvatlanadi SQL Server 2022?

Javob: Ha, SQL Server Profiler hali ham kiritilgan SQL Server 2022 va SQL Server Menejment studiyasi, o'shandan beri eskirganiga qaramay SQL Server 2016. Microsoft ushbu vositani joriy versiyalari bilan yetkazib berishda davom etmoqda, biroq yangi monitoring ilovalari uchun Kengaytirilgan Voqealar dasturiga o‘tishni tavsiya qiladi. Asbob funktsional bo'lib qoladi va muammolarni bartaraf etish va maxsus tahlil qilish uchun keng qo'llaniladi.

Savol: O'rtasidagi farq nima SQL Server Profiler va SQL Trace?

A: SQL Server Profiler - bu SQL Trace dvigateliga ulanadigan grafik foydalanuvchi interfeysi vositasi SQL Server. SQL Trace - bu voqealarni yozib oladigan asosiy texnologiya. Profiler interfeysi yordamida yoki sp_trace_create kabi T-SQL-da saqlanadigan protseduralar orqali to'g'ridan-to'g'ri izlarni yaratishingiz mumkin. Profiler oson konfiguratsiyani ta'minlaydi, T-SQL izlari esa ko'proq avtomatlashtirish imkoniyatlarini taklif qiladi.

Savol: Umumjahon ishlash xarajatlari qancha SQL Server Profiler qo'shiladimi?

Javob: Ishlash effekti iz konfiguratsiyasiga qarab farq qiladi. Faqat aniq voqealarni yozib olgan yaxshi filtrlangan iz 1-5% qo'shimcha xarajatlarni qo'shishi mumkin. Filtrlarsiz yomon sozlangan izlar, ayniqsa band tizimlarda 20-50% yoki undan ko'proq yuk qo'shishi mumkin. Server tomonidagi izlar mijoz tomonidagi izlarga qaraganda kamroq ta'sirga ega. Voqealar hajmini minimallashtirish uchun har doim filtrlardan foydalaning va avval ishlab chiqarishdan tashqari muhitda izlarni sinab ko'ring.

Savol: Yugurish mumkinmi? SQL Server Ishlab chiqarish serverlarida profilchi?

Javob: Siz yugurishingiz mumkin SQL Server Ishlab chiqarish serverlarida profiler, lekin ehtiyot bo'ling. Yuqori tanlangan filtrlardan foydalaning, kuzatuv davomiyligini cheklang va ta'sirni minimallashtirish uchun server tomonidagi izlarni afzal qiling. Iloji bo'lsa, past faollik davrida ishlab chiqarish izlarini ishga tushiring. Uzluksiz ishlab chiqarish monitoringi uchun Kengaytirilgan hodisalar yoki so'rovlar do'konini ko'rib chiqing, chunki ular kamroq qo'shimcha xarajatlarni taklif qiladi.

Savol: Qanday ruxsatlardan foydalanishim kerak SQL Server Profilermi?

Javob: Izlarni yaratish va ishga tushirish uchun sizga ALTER TRACE ruxsati kerak. Ruxsat etilgan server roli tizimi a'zolari avtomatik ravishda bu ruxsatga ega. Tizim boshqaruvchisi bo'lmagan foydalanuvchilar uchun ALTER TRACE ruxsatini aniq bering. Bundan tashqari, konfiguratsiyangiz asosida fayllar yoki jadvallarga kuzatuv maʼlumotlarini saqlash uchun sizga tegishli ruxsatlar kerak boʻladi.

Savol: Nega men izimdagi barcha voqealarni ko‘ra olmayapman?

Javob: etishmayotgan hodisalar odatda haddan tashqari cheklovchi filtrlar yoki bufer to‘lib ketishi natijasida yuzaga keladi. Filtr konfiguratsiyasi kerakli hodisalarni istisno qilmasligiga ishonch hosil qiling. Bufer to'lib ketishi qachon sodir bo'ladi SQL Server hodisalarni yetarlicha tez yoza olmaydi, odatda band tizimlarda filtrlanmagan izlar bilan. Voqea hajmini kamaytirish yoki diskning kirish/chiqarish ish faoliyatini oshirish uchun filtrlar qo'shing. Voqealar yozib olinmaganligini ko'rsatadigan xato xabarlarini tekshiring.

Savol: Qanday qilib qulflangan ma'lumotni qo'lga kiritaman SQL Server Profilermi?

Javob: Qulflar toifasidan Lock:Deadlock va Lock:Deadlock Chain hodisalarini o'z ichiga olgan iz yarating. TextData ustuni tanlanganligiga ishonch hosil qiling, chunki unda XML blokirovkasi grafigi mavjud. Tugallanish yuzaga kelganda, XML-ni TextData ustunidan nusxalang, uni .xdl kengaytmasi bilan saqlang va uni oching. SQL Server Grafik blokirovka diagrammasini ko'rish uchun Management Studio.

Savol: Izlarni fayllarga saqlash va jadvallar o'rtasidagi farq nima?

Javob: Fayllar izni bajarish vaqtida yaxshiroq ishlashni taklif qiladi, chunki ular faylni chetlab o'tadi SQL Server saqlash dvigateli. Fayl izlari ma'lumotlarni to'g'ridan-to'g'ri diskka minimal yuk bilan yozadi. Jadval izlari saqlash mexanizmi orqali yoziladi, qo'shimcha yuk qo'shadi, lekin kuzatuv ma'lumotlariga qarshi darhol T-SQL so'rovlarini yoqadi. Ma'lumotlarni suratga olish paytida yoki undan keyin darhol so'rash kerak bo'lganda unumdorlikka sezgir stsenariylar va jadvallar uchun fayllardan foydalaning.

Savol: Avtomatlashtira olamanmi? SQL Server Profiler izlar to'plami?

Javob: Ha, T-SQL saqlangan protseduralari bilan yaratilgan server tomonidagi izlar yordamida kuzatuv to'plamini avtomatlashtiring. Sp_trace_create va tegishli protseduralar yordamida skriptlarni yozing, keyin ularni rejalashtirish SQL Server Agent ishlari. Ushbu yondashuv belgilangan jadvallar bo'yicha kuzatuvsiz iz to'plash imkonini beradi. PowerShell skriptlari murakkabroq stsenariylar uchun boshqa avtomatlashtirish variantini taqdim etadi.

Savol: Izni qancha vaqt davom ettirishim kerak?

Javob: Kuzatuv davomiyligi maqsadlaringizga bog'liq. Muayyan muammolarni bartaraf qilish uchun muammoni takrorlash paytida izlarni bajaring, odatda 5-30 daqiqa. Samaradorlikni tahlil qilish uchun eng yuqori faollik davrida kamida bir soat yozib oling. Ish yukini tahlil qilish yoki imkoniyatlarni rejalashtirish uchun turli vaqt oralig'ida bir necha soat yig'ing. Resurslarni bo'shatish uchun monitoring tugallanganda har doim izlarni to'xtating.

Savol: Agar iz faylim juda katta bo'lsa nima qilishim kerak?

Javob: Bitta katta fayl oʻrniga bir nechta kichikroq fayllarni yaratish uchun kuzatuv xususiyatlarida fayllarni aylantirishni yoqing. Disk maydoni va tahlil ehtiyojlaringizga mos keladigan maksimal fayl hajmini o'rnating. Yozib olingan hodisa hajmini kamaytirish uchun filtrlardan foydalaning. Katta izlar uchun butun izni birdaniga yuklagandan ko'ra, ma'lumotlarni segmentlarda tahlil qilishni o'ylab ko'ring. Disk maydonini boshqarish uchun eski kuzatuv fayllarini muntazam ravishda arxivlang yoki o'chiring.

Savol: Yuqori protsessordan foydalanishga olib keladigan so'rovlarni qanday topish mumkin?

A: SQL:BatchCompleted va RPC:Completed hodisalari bilan iz yarating. CPU, Duration va TextData ustunlarini qo'shing. Faqat 1000 millisekund kabi chegaradan oshib ketadigan so'rovlarni olish uchun Davomiylik bo'yicha filtrlang. Ma'lumotlarni to'plagandan so'ng, CPU ustuni bo'yicha kamayish tartibida saralang. Yuqoridagi so'rovlar eng ko'p protsessor vaqtini oladi. Ushbu so'rovlarni indekslarning yo'qligi yoki samarasiz mantiq kabi optimallashtirish imkoniyatlari uchun tekshiring.

Savol: Jon SQL Server Profiler so'rovlarni bajarish rejalarini yozib oladimi?

A: SQL Server Profiler Ishlash toifasidagi Showplan XML hodisalari orqali ijro rejasi ma'lumotlarini olishi mumkin. Toʻliq ijro rejalarini yozib olish uchun Showplan XML yoki Showplan XML Statistics Profile voqealarini tanlang. TextData ustunida XML reja ma'lumotlari mavjud. Biroq, muntazam ijro rejasini tahlil qilish uchun, SQL Server Management Studio ning grafik ijro rejasi funksiyalari yoki Query Store osonroq muqobil variantlarni taqdim etadi.

Savol: Umumiy monitoring uchun boshlash uchun eng yaxshi shablon qaysi?

A: Standart shablon umumiy monitoring uchun yaxshi boshlang'ich nuqtani taqdim etadi. U umumiy so'rovlarni bajarish hodisalarini, saqlangan protsedura chaqiruvlarini va muvozanatli qo'shimcha xarajatlar bilan xatolarni kuzatishni o'z ichiga oladi. So'rovlar bajarilishiga qaratilgan kamroq ta'sirli monitoring uchun TSQL shablonidan foydalaning. Filtrlar qo'shish va asoslarni tushungandan so'ng hodisalarni tanlashni sozlash orqali shablonlarni o'zingizning maxsus ehtiyojlaringizga qarab sozlang.

Savol: Faqat ma'lum bir ilova yoki foydalanuvchini qanday kuzatish mumkin?

Javob: Muayyan ilovalar yoki foydalanuvchilarni ajratish uchun ustun filtrlaridan foydalaning. Ilovalar uchun ulanish qatorida ko'rsatilgan nomdan foydalanib, ApplicationName ustuni bo'yicha filtrlang. Foydalanuvchilar uchun LoginName ustuni boʻyicha filtrlang SQL Server login yoki Windows hisobi nomi. Muayyan ma'lumotlar bazasida bitta ilovaning faoliyatini kuzatish uchun ApplicationName va DatabaseName bo'yicha filtrlash kabi diqqatni yanada toraytirish uchun bir nechta filtrlarni birlashtiring.

15. Xulosa va keyingi qadamlar

15.1 ta asosiy xulosalar

SQL Server Profiler eskirgan holatiga qaramay, ad-hoc ma'lumotlar bazasi muammolarini bartaraf etish uchun qimmatli vosita bo'lib qolmoqda. Oddiy interfeys va keng qamrovli hodisalarni qayd etish uni tezkor natijalarga muhtoj bo'lganingizda tezkor diagnostika sessiyalari uchun ideal qiladi. Muayyan muammolarni bartaraf etish, ilovalarning xatti-harakatlarini tahlil qilish va xavfsizlikni audit qilish uchun Profilerdan foydalaning.

Eng yaxshi amaliyotlar unumdorlikka ta'sirni kamaytirish uchun filtrlardan agressiv foydalanishni, ishlab chiqarish muhitlari uchun server tomoni izlarini afzal ko'rishni va kuzatuv davomiyligini kerakli davrlar bilan cheklashni o'z ichiga oladi. Qo'shimcha xarajatlarni kamaytirish uchun faqat muhim voqealar va ustunlarni tanlang. Suratga olish jarayonida yaxshiroq ishlash uchun jadvallarga emas, balki fayllarga izlarni saqlang.

15.2 Oldinga siljish: zamonaviy asboblarni qamrab olish

Dan o'tish SQL Server Uzoq muddatli monitoring yechimlari uchun Kengaytirilgan Voqealar uchun Profiler. Profiler funktsional bo'lib qolsa-da, kengaytirilgan tadbirlarni o'rganishga vaqt sarflash sizni kelajak uchun joylashtiradi SQL Server versiyalari. Umumiy Profiler izlaringizni takrorlaydigan oddiy Kengaytirilgan tadbirlar sessiyalaridan boshlang.

Qo'lda kuzatish konfiguratsiyasisiz avtomatik ishlash monitoringini olish uchun ishlab chiqarish ma'lumotlar bazalarida Query Store’ni yoqing. Query Store so'rov rejalari va bajarilish statistikasini doimiy ravishda qayd etadi va ishlash tahlili uchun asosiy ma'lumotlarni taqdim etadi. Keng qamrovli monitoring uchun Query Store’ni maqsadli kengaytirilgan tadbirlar sessiyalari bilan birlashtiring.

15.3 Qo'shimcha manbalar

Quyidagi manbalar sizning fikringizni chuqurlashtirishga yordam beradi SQL Server Profiler bilimi va monitoringning eng yaxshi amaliyotlaridan xabardor bo'ling:

Rasmiy Microsoft hujjatlari

Jamiyat resurslari

  • SQL Server Markaziy - Ma'lumotlar bazasi mutaxassislari uchun maqolalar, forumlar va skriptlar
  • son-toshib SQL Server Teg - Muayyan muammolarni bartaraf etish uchun savollar va javoblar
  • Reddit r/SQLServer – Muhokama forumi SQL Server mavzular va maslahatlar
  • SQLServerCentral.com forumlari - Profil yaratish va ishlash bo'yicha faol jamoatchilik muhokamalari
  • MSDN SQL Server Forumlar – Microsoft tomonidan joylashtirilgan hamjamiyatni qo'llab-quvvatlash forumlari

Bloglar va texnik maqolalar

  • SQL Server Ishlash monitori – Maxsus ishlash monitoringi va optimallashtirish mazmuni
  • Brent Ozar cheksiz blogi - Ishlashni sozlash va eng yaxshi amaliyotlarni kuzatish
  • SQLSkills.com - Ekspert darajasi SQL Server sanoat rahbarlarining mazmuni
  • Microsoft SQL Server Blog - Rasmiy mahsulot yangilanishlari va xususiyatlar haqida e'lonlar
  • Oddiy suhbat - amaliy SQL Server darsliklar va amaliy tadqiqotlar

O'qitish va sertifikatlash

Kitoblar

  • SQL Server Query Performance Tuning - Ishlashni optimallashtirish bo'yicha keng qamrovli qo'llanma
  • Pro SQL Server Ichki qismlar - chuqur sho'ng'in SQL Server Arxitektura
  • SQL Server Amalga oshirish rejalari - so'rovlarni optimallashtirishni tushunish
  • Mutaxassislar samaradorligini indekslash SQL Server – Indeksni loyihalash va optimallashtirish
  • SQL Server Murakkab muammolarni bartaraf etish va samaradorlikni sozlash – Murakkab diagnostika usullari

Asboblar va yordamchi dasturlar

  • SQL Server Boshqaruv studiyasi - uchun asosiy interfeys SQL Server Profil
  • Azure DataStudio - Zamonaviy kross-platforma ma'lumotlar bazasi vositasi
  • sp_WhoIsActive - Jamiyat tomonidan yaratilgan ommabop monitoring saqlanadigan protsedura
  • SQL Sentry Plan Explorer - Bepul ijro rejasini tahlil qilish vositasi
  • DBForge Studio – Uchinchi tomon SQL Server ishlab chiqish va boshqarish vositasi

Muallif haqida

Yuan Sheng 10 yildan ortiq tajribaga ega bo'lgan katta ma'lumotlar bazasi administratori (DBA). SQL Server muhitlar va korporativ ma'lumotlar bazasini boshqarish. U moliyaviy xizmatlar, sog'liqni saqlash va ishlab chiqarish tashkilotlarida ma'lumotlar bazasini tiklashning yuzlab stsenariylarini muvaffaqiyatli hal qildi.

Yuan ixtisoslashgan SQL Server ma'lumotlar bazasini tiklash, yuqori darajadagi mavjudlik yechimlariva samaradorlikni optimallashtirish. Uning keng amaliy tajribasi ko'p terabaytli ma'lumotlar bazalarini boshqarish, amalga oshirishni o'z ichiga oladi. Doim mavjud guruhlarva muhim biznes tizimlari uchun avtomatlashtirilgan zaxiralash va tiklash strategiyalarini ishlab chiqish.

Yuan o'zining texnik tajribasi va amaliy yondashuvi orqali ma'lumotlar bazasi ma'murlari va IT mutaxassislariga murakkab muammolarni hal qilishga yordam beradigan keng qamrovli qo'llanmalarni yaratishga e'tibor qaratadi. SQL Server muammolarni samarali hal qiladi. U eng so'nggi yangiliklardan xabardor bo'lib qoladi SQL Server relizlar va Microsoft-ning rivojlanayotgan ma'lumotlar bazasi texnologiyalari, uning tavsiyalari haqiqiy dunyodagi eng yaxshi amaliyotlarni aks ettirishini ta'minlash uchun tiklash stsenariylarini muntazam ravishda sinab ko'radi.

haqida savollaringiz bor SQL Server tiklash yoki ma'lumotlar bazasi muammolarini bartaraf etish bo'yicha qo'shimcha yo'riqnoma kerakmi? Yuan tabriklaydi mulohazalar va takliflar ushbu texnik resurslarni yaxshilash uchun.

Hozir ulashing: