日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
執(zhí)行Oraclesql的實際步驟

在某些項目中有時后會出現(xiàn)以下的情況,由于代碼寫錯,在執(zhí)行Oracle sql之后,我們沒有關(guān)閉數(shù)據(jù)庫的相關(guān)連接。如果該代碼重復(fù)執(zhí)行Oracle sql時,會導(dǎo)致應(yīng)用服務(wù)器和數(shù)據(jù)庫的連接不斷增加,最終導(dǎo)致連接超過數(shù)據(jù)庫連接上限,系統(tǒng)崩潰。

問題:

項目中的代碼很多,很難準(zhǔn)確定位到底是哪一段代碼出了問題

解決辦法:

用應(yīng)用程序的用戶登錄Oracle,執(zhí)行下面的sql:

 
 
 
  1. select sql_text from v$sqlarea a where a.
    HASH_VALUE in (  
  2. select b.prev_hash_value from v$session b where b. 
    MACHINE = 'WLS254' 
  3. )   

sql中的"WLS254"指的是應(yīng)用服務(wù)器的名稱,該sql得到的結(jié)果就是WLS254這臺機器連接到Oracle的正在執(zhí)行的Oraclesql。通過分析這些sql,就可以快速的發(fā)現(xiàn)是哪部分程序沒有釋放連接。

v$session視圖的字段說明:

SADDR RAW(4) 會話地址,SID NUMBER 會話標(biāo)識符

SERIAL# NUMBER 會話序列號。用來唯一地標(biāo)識繪畫對象。如果該會話結(jié)束且其他會話以相同的會話ID 開始,則保證會話級的命令被應(yīng)用到正確會話對象

AUDSID NUMBER 審計會話ID。PADDR RAW(4) 擁有這個會話的進(jìn)程地址,USER# NUMBER Oracle 用戶標(biāo)識符,USERNAME VARCHAR(30) Oracle 用戶名,COMMAND NUMBER 正進(jìn)行的命令。關(guān)于值的列表,請參閱表B-

11OWNERID NUMBER 如果值為2147483644,則此列的內(nèi)容無效。否則此列包含擁有可移植會話的用戶標(biāo)符。對于利用并行從服務(wù)器的操作,將這個值解釋為一個48 字節(jié)的值。其低位兩字節(jié)表示會話號,而高位字節(jié)表示查詢協(xié)調(diào)程序的實例ID

TADDR VARCHAR2(8) 事務(wù)處理狀態(tài)對象的地址

LOCKWAIT VARCHAR2(8) 等待鎖的地址;如果沒有,為NULL

STATUS VARCHAR2(8) 會話的狀態(tài):ACTIVE (當(dāng)前執(zhí)行的

sql)、INACTIVE、KILLED(標(biāo)記為

終止)、CACHED(為Oracle*XA 使

用而臨時高速緩存)、SNIPED(會

話不活動,在客戶機上等待)

SERVER VARCHAR2(9) 服務(wù)器類型:

DEDICATED、SHARED、

PSEUDO、NONE

SCHEMA# NUMBER 模式用戶標(biāo)識符

SCHEMANANME VARCHAR2(30) 模式用戶名,OSUSER VARCHAR(15) 操作系統(tǒng)客戶機用戶名,PROCESS VARCHAR2(9) 操作系統(tǒng)客戶機進(jìn)程ID,MACHINE VARCHAR2(64) 操作系統(tǒng)機器名,TERMINAL VARCHAR2(10) 操作系統(tǒng)終端名,PROGRAM VARCHAR(48) 操作系統(tǒng)程序名,TYPE VARCHAR2(10) 會話類型。sql_ADDRESS RAW(4) 與sql_HASH_VALUE 一道使用標(biāo)識

當(dāng)前正在執(zhí)行的Oraclesql 語句

sql_HASH_VALUE NUMBER 與sql_ADDRESS 一道使用標(biāo)識當(dāng)前

正在執(zhí)行的sql 語句

MODULE VARCHAR2(48) 包含當(dāng)前正在執(zhí)行的模塊名,正如

由調(diào)用

DBMS_APPLICATION_INFO.SET_MODU

LE 過程所設(shè)置

MODULE_HASH NUMBER 上面MODULE 的散列值

ACTION VARCHAR2(32) 包含當(dāng)前執(zhí)行活動的名稱,正如由

調(diào)用

DBMS_APPLICATION_INFO.SET_ACTI

ON 過程所設(shè)置

ACTION_HASH NUMBER 上列活動名稱的散列值

CLIENT_INFO VARCHAR2(64) 由

DBMS_APPLICATION_INFO.SET_CLIE

NT_INFO 過程設(shè)置的信息

FIXED_TABLE_

SEQUENCE

NUMBER 此列包含一個數(shù),每當(dāng)會話完成一

個數(shù)據(jù)庫調(diào)用并且存在來自動態(tài)性能表的介入選擇,它個數(shù)就增加。這個列可被性能監(jiān)控程序用來監(jiān)控數(shù)據(jù)庫中的統(tǒng)計數(shù)據(jù)。每當(dāng)性能監(jiān)控程序查看數(shù)據(jù)庫時,只需要查看當(dāng)前活動的會話或在這個列中具有比上次性能監(jiān)控程序所看到的最大值更大的值的會話即可。所有其他會話自上次性能監(jiān)控程序查看數(shù)據(jù)庫以來都是空閑的。

以上的相關(guān)內(nèi)容就是對Oracle sql執(zhí)行方式的相關(guān)內(nèi)容的部分介紹,望你能有所收獲。


網(wǎng)站名稱:執(zhí)行Oraclesql的實際步驟
文章URL:http://www.5511xx.com/article/djessdi.html