Rumah >pangkalan data >tutorial mysql >Bagaimanakah Peristiwa Lanjutan Pelayan SQL Mengenalpasti Pernyataan SQL yang Mempengaruhi Jadual Tertentu?
Mencipta Pencetus untuk Menangkap SQL yang Dilaksanakan untuk Jadual Terjejas
Masalah:
Kepada menyelesaikan masalah kemas kini misteri pada jadual tertentu, adalah perlu untuk mengenal pasti SQL yang dilaksanakan yang membawa kepada perubahan. Malangnya, logik perniagaan aplikasi terutamanya berada dalam pangkalan data, menjadikannya mencabar untuk menentukan sumber kemas kini ini.
Objektif:
Buat pencetus pada jadual dalam soalan untuk log penyataan SQL yang mempengaruhinya, membolehkan pengecaman pelakunya SQL.
Pendekatan Menggunakan Peristiwa Lanjutan Pelayan SQL:
1. Sediakan Pangkalan Data untuk Pengujian:
Buat pangkalan data ringkas dengan jadual dan pencetus yang diperlukan untuk mensimulasikan senario yang bermasalah.
2. Cipta Sesi Acara Lanjutan:
Gunakan Acara Lanjutan Pelayan SQL untuk menangkap pernyataan SQL yang dilaksanakan pada jadual. Ini melibatkan membuat sesi acara yang menapis pada pencetus yang digunakan untuk mensimulasikan kemas kini.
3. Prosedur Pencetus Proc1:
Laksanakan Proc1, yang mencetuskan rangkaian panggilan prosedur yang akhirnya menyebabkan kemas kini misteri kepada jadual.
4. Hentikan Sesi Acara Lanjutan:
Selepas prosedur dilaksanakan, hentikan sesi Acara Lanjutan.
5. Analisis Data Peristiwa:
Gunakan fungsi fn_xe_file_target_read_file untuk membaca data yang ditangkap oleh sesi Peristiwa Lanjutan dan menganalisis timbunan panggilan untuk mengenal pasti pernyataan SQL yang dilaksanakan.
Kelebihan Acara Lanjutan Pendekatan:
Faedah Tambahan:
Data Extended Events yang ditangkap juga boleh digunakan untuk menyelesaikan masalah prestasi dengan menganalisis rancangan pelaksanaan pertanyaan dan statistik pelaksanaan.
Atas ialah kandungan terperinci Bagaimanakah Peristiwa Lanjutan Pelayan SQL Mengenalpasti Pernyataan SQL yang Mempengaruhi Jadual Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!