欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Oracle 10g實(shí)用程序trcsess:跟蹤sql語(yǔ)句 - Oracle - IT學(xué)習...
在診斷數據庫系統性能的過(guò)程中,總會(huì )涉及到跟蹤效率低下的sql語(yǔ)句,Oracle數據庫10g包含一種新的實(shí)用程序trcsess,它可以讓您基于會(huì )話(huà)ID或模塊名稱(chēng)之類(lèi)的條件,有選擇地從大量跟蹤文件中抽取出跟蹤數據,并將它們保存到一個(gè)文件中。該實(shí)用程序在共享服務(wù)器配置中特別有用,因為調度程序可能把每一個(gè)用戶(hù)請求傳遞給不同的共享服務(wù)器進(jìn)程,從而為任何給定的會(huì )話(huà)產(chǎn)生多個(gè)跟蹤文件。與通過(guò)大量跟蹤文件發(fā)掘信息不同,Oracle數據庫10g的trcsess可以讓您獲得關(guān)于單一用戶(hù)會(huì )話(huà)的整合后的跟蹤信息?,F在就如何跟蹤sql語(yǔ)句來(lái)做一個(gè)簡(jiǎn)單的總結。權做拋磚引玉之用。如果我們可以修改應用系統的源代碼,則可以直接在程序中加入如下的語(yǔ)句:
1)alter session set timed_statistics=true; /*適用于Oracle 8.1.7以后的版本*/ 2)alter session set max_dump_file_size=unlimited ; /*適用于Oracle 9i以后的版本*/ 3)alter session set tracefile_identifier='POX20031031a'; /*適用于Oracle 9i以后的版本*/ 4)alter session set events '10046 trace name context forever, level 8'; /*在這里編寫(xiě)應用程序的代碼*/ 5)alter session set events '10046 trace name context off';
在上述語(yǔ)句中,語(yǔ)句1)是把該會(huì )話(huà)的時(shí)間統計打開(kāi),該參數默認為false.在Oracle 9i之前的版本中,不能在會(huì )話(huà)級設置該參數,只能修改初始化文件然后重新啟動(dòng)數據庫,這樣將在實(shí)例級打開(kāi)時(shí)間統計。
語(yǔ)句2)是把跟蹤文件的大小設置成操作系統所允許的最大尺寸,這樣可以防止跟蹤文件在完成所需要的跟蹤之前被填充滿(mǎn),此外需要注意的是確保存放跟蹤文件的目錄要有足夠的空間,否則將會(huì )收到“文件系統已滿(mǎn)”錯誤。
語(yǔ)句3)的作用是使生成的跟蹤文件名稱(chēng)中包含'POX20031031a'字符串,這樣可以使你很容易的找到所需的跟蹤文件,該參數在Oracle 9i之后可用。
語(yǔ)句4)和語(yǔ)句5)的作用分別是打開(kāi)和關(guān)閉跟sql跟蹤,你可以在這兩個(gè)語(yǔ)句之間寫(xiě)入應用程序的代碼,這些代碼的執行情況都將被跟蹤。需要注意的是語(yǔ)句4)的level關(guān)鍵字,它用來(lái)指定跟蹤級別,一共有0,1,2,4,8,12六個(gè)級別可以設置,0相當于關(guān)閉跟蹤;1是輸出一般的跟蹤信息,不包括綁定變量和等待信息;2和1相同;4是在級別1的基礎上增加綁定變量信息;8是在級別1的基礎上增加等待信息;級別12是輸出包含級別1,4,8的所有信息。
如果應用程序的代碼無(wú)法修改或者是不想去修改,則可以在其他會(huì )話(huà)中打開(kāi)對特定會(huì )話(huà)的跟蹤,方法如下:
1)sys.dbms_system.set_bool_param_in_session(:sid, :serial,'timed_statistics', true); 2)sys.dbms_system.set_int_param_in_session( :sid, :serial,'max_dump_file_size', 2147483647); 打開(kāi)和關(guān)閉跟蹤的第一種方法(oracle推薦): 3.1)sys.dbms_support.start_trace_in_session(:sid, :serial,waits=>true, binds=>false); /* 在此期間運行要跟蹤的應用程序*/ 4.1)sys.dbms_support.stop_trace_in_session(:sid, :serial); 打開(kāi)和關(guān)閉跟蹤的第二種方法: 3.2)sys.dbms_system.set_ev(:sid, :serial, 10046, 8, ''); /*在此期間運行要跟蹤的應用程序*/ 3.2)sys.dbms_system.set_ev(:sid, :serial, 10046, 0, '');
以上語(yǔ)句中的:sid和:serial分別代表所要跟蹤的會(huì )話(huà)的ID和序列號,這些信息可以從V$SESSION視圖的SID和SERIAL#列獲得。打開(kāi)關(guān)閉跟蹤中第一種方法的好處是你不用自己寫(xiě)10046這個(gè)事件號,這樣可以減少錯誤,但是dbms_support程序包在你的數據庫中可能會(huì )不存在,這樣就只有用第二種方法了。
到現在為止,我們已經(jīng)生成了所需要的跟蹤文件,然后我們需要找到該文件來(lái)進(jìn)行分析。跟蹤文件的存放位置只有兩種可能,Oracle參數USER_DUMP_DEST 或者BACKGROUND_DUMP_DEST指定的目錄;文件名稱(chēng)根據不同的平臺會(huì )有所不同,但是在文件名中都會(huì )包含會(huì )話(huà)所對應的操作系統進(jìn)程(線(xiàn)程)號,也就是V$PROCESS的SPID列(V$PROCESS.SPID) ,該信息可以通過(guò) v$process.addr和v$session.paddr做表連接查詢(xún)得到。例如:
select spid from v$process p,
v$session s where p.addr=s.paddr and s.sid=:sid and s.serial#=:serial.
本文只對Oracle在使用專(zhuān)用服務(wù)器進(jìn)程(Dedicated Server)模式做了總結,至于的共享服務(wù)器(Shared Server)模式和在應用級使用連接池的情況下,收集sql跟蹤信息的方法會(huì )比較復雜,希望有相關(guān)經(jīng)驗的高手來(lái)總結。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
查詢(xún)Oracle正在執行的sql語(yǔ)句
Oracle 10g:用等待界面診斷性能問(wèn)題
獲取、閱讀執行計劃
oracle系統表v$session、v$sql字段說(shuō)明
45 個(gè)非常有用的 Oracle 查詢(xún)語(yǔ)句
Oracle V$SESSION詳解
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久