如何定位SQL语句在共享池里用到了哪些chunks(5)

简单总结一下:
定位到父游标heap 0:
指向父游标handle的指针:07000001B8670420(类型为KGLHD,x$kglob)->父游标heap 0的描述符070000019BB137F0(类型为KGLDA,x$kglob)->父游标heap 0所在chunk地址:0700000195D40F60(类型为KGLH0,x$ksmsp)

找到父游标下的子游标,可以使用:
select kglhdadr,kglnaobj from x$kglob where kglnaobj like 'select * from scott.t1 where username=%' and kglhdadr!=kglhdpar;

定位到子游标heap 0、heap 6:
子游标handle的指针:07000001B84F85E8(类型为KGLHD,x$kglob)->子游标heap 0的描述符07000001B84F8530(类型为KGLDA,x$kglob)->heap 0所在chunk地址:0700000195D3FF60(类型为KGLH0,x$ksmsp)
子游标handle的指针:07000001B84F85E8(类型为KGLHD,x$kglob)->子游标heap 6的描述符0700000195D416E8(包含在父游标的heap 0所在的chunk里,x$kglob)->heap 6所在chunk地址:0700000199EA5AB0、0700000199E9FAB0(类型为SQLA,x$ksmsp)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/08fb1730e9b4f49b36f7ab5ea92d70fd.html