تقوم عملية التتبع بكتابة عبارات SQL محددة إلى ملف نظام التشغيل ، بالإضافة إلى المعلومات المقابلة (خطط الاستعلام وانتظار الأحداث) التي يتم تنفيذها أثناء تشغيل البرنامج النصي. يمكنك تتبع أي جلسة عشوائية في قاعدة بيانات Oracle.
تعليمات
الخطوة 1
قبل بدء التتبع ، تحتاج إلى تمكين جمع الإحصائيات ، وإلا ستظهر الملفات التي ليس لها أي مرات. للقيام بذلك ، تحتاج إلى تنفيذ الاستعلام: تغيير مجموعة النظام timed_statistics = true إذا كنت بحاجة إلى بدء التتبع في الجلسة الحالية ، فيجب استبدال معلمة النظام بالجلسة.
الخطوة 2
تحقق من تعيين سمة حجم ملف التفريغ الأقصى إلى قيمة كافية. للقيام بذلك ، قم بتنفيذ استعلام SQL المقابل: SELECT value FROM v $ param p WHERE name = 'max_dump_file_size' يمكن تعيين قيمة $ param على مستوى قاعدة البيانات (تغيير النظام) وعلى مستوى الجلسة (تغيير الجلسة).
الخطوه 3
ثم حدد الجلسة التي يجب تتبعها. للقيام بذلك ، اكتشف القيم الأساسية للأعمدة: SELECT sid، serial # from v $ system حيث select_criteria for_tracing
الخطوة 4
لبدء التتبع ، يجب عليك تعيين الحدث 1046 في الجلسة المقابلة. قم بتشغيل الإجراء sys.dbms_system.set_ev ، ثم قم بتمرير قيم sid والمسلسل التي تم الحصول عليها كمعلمات عدد صحيح: BEGIN sys.dbms_system.set_ev (sid، serial #، 10046، 8، )؛ نهاية
الخطوة الخامسة
لإيقاف التتبع ، قم بتغيير قيمة مستوى الحدث 10046 من 8 إلى 0.
الخطوة 6
يظهر ملف التتبع في دليل تفريغ قاعدة بيانات أوراكل (Oracle / admin / databaseSID / udump). يحتوي اسم هذا الملف على معرف عملية نظام التشغيل التي تم تنفيذ العملية فيها ، ويكون الامتداد.trc. من أجل معالجة المعلومات في نموذج قابل للقراءة ، قم بمعالجة ملف التتبع في الأداة المساعدة tkprof: cd C: ORACLEadmindatabaseSIDudump
tkprof file.trc output = my_file.prf سيقوم الملف المعالج بسرد جميع الأوامر التي تم تنفيذها أثناء الجلسة.