<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
    Oracle外部調用及進程終止
    ?
    ??? 關于Oracle外接的一些接口,這方面很不熟悉,所以這塊內容說實話沒怎么看明白,摘錄到這邊,留著等以后學習使用。
    ?
    一、如何連接外部過程
    ?
    ??? 外部過程是從另外的程序中調用的過程,一般會采用不同的語言編碼,例如調用C、Java子程序等。Oracle提供了一個特殊的接口“調用規范”,這個接口允許用戶調用使用其他語言編寫的外部過程。
    ?
    ??? 要調用外部過程,首先激活網絡監聽進程。網絡監聽進程第一步啟動外部過程代理(默認名為extproc);第二步建立起網絡連接;第三步將DLL名稱、外部過程名稱以及參數傳遞給外部過程代理;然后外部代理裝在DLL并運行外部過程;最后將返回值傳回應用采用程序。
    ?
    ??? 1、配置一個調用外部過程環境
    ?
    ????? ① 編輯tnsname.ora文件,添加一個入口連接到監聽進程(以及隨后的外部過程代理)
    ????? ② 編輯listener.ora文件,為外部過程監聽進程添加一個入口
    ????? ③ 啟用一個單獨的監聽進程來專門處理外部過程
    ????? ④ 限制單獨的監聽進程權限,不能讀寫數據庫或Oracle服務器地址空間的權限
    ????? ⑤ 若外部過程代理在一臺遠程計算機上,那么可以講訪問的外部過程代理設置在4ORACLE_HOME/BIN路徑
    ?
    ??? 2、編輯tnsname.ora文件
    ?
    ??? EXTPROC_CONNECTION_DATE=
    ??? (DESCRIPTION=
    ??? (ADDRESS=(PROTOCOL=ipc)(KEY=extproc_key))
    ??? (CONNECT_DATA=
    ??? (SID=extproc_agent)))
    ?
    ??? 關鍵字為extproc_key,它必須與listener.ora文件中指定的KEY值一致,而extproc_agent也必須與listener.ora文件中的SID_NAME一致
    ?
    ??? 3、編輯listener.ora文件
    ?
    ??? LISTENER=
    ??? (DESCRIPTION=
    ??? (ADDRESS= (PROTOCOL=ipc)(KEY=extproc_key)))
    ??? SID_LIST_LISTENER=
    ??? (SID_LIST=
    ??? (SID_DESC=(SID_NAME=extproc_agent)(ORACLE_HOME=/u1/app/oracle/9.0)(PROGRAM=extproc)))
    ?
    ??? PROGRAM參數值extproc以便于默認的外部過程代理的名稱一致。
    ?
    ?
    二、終止對話
    ?
    ??? 1、終止對話
    ?
    ??? ALTER SYSTEM KILL SESSION '7,15';
    ?
    ??? 7代表該會話的系統標識號,15代表串行號
    ?
    ??? 2、識別要終止的對話
    ?
    ??? SELECT SID, SERIAL#, STATUS
    ????? FROM V$SESSION
    ???? WHERE USERNAME = 'JWARD';
    ?
    ??? 3、終止處于激活狀態的對話
    ?
    ??? 當SESSION處于ACTIVE狀態時KILL SESSION,則事務將被回滾,而且收到消息:
    ??? ORA-00028:your session has been killed
    ?
    ??? 在收到ORA-00028后如果重新連接到數據庫錢提交了另外語句,則Oracle返回:
    ??? ORA-01012:not logged on
    ?
    ??? 當SESSION在執行網絡I/O或回滾某個事務時無法被KILL,只能等操作完成。
    ??? ALTER SYSTEM終止對話需要等待60秒的終止過程,不能被終止的操作執行超過60秒則將其表示為“已被終止”
    ?
    ??? 4、非激活狀態SESSION被KILL的情況
    ?
    ??? 非激活的SESSION被KILL后不會立即收到ORA-00028消息,只有再次試圖使用時才會返回。
    ?
    ??? 非激活狀態SESSION被KILL后會在V$SSESSION視圖中的STATUS標記為KILLED,
    ??? 當用戶試圖再次使用該會話時,該會話信息才會從V$SSESSION中刪除
    ?
    ?
    ?
    ?
    posted on 2008-11-19 19:43 decode360 閱讀(332) 評論(0)  編輯  收藏 所屬分類: 08.DBA
    主站蜘蛛池模板: 亚洲一区无码精品色| 国产AV无码专区亚洲AV麻豆丫| 日日躁狠狠躁狠狠爱免费视频| 免费观看国产网址你懂的| 亚洲av日韩综合一区在线观看| 国产高清视频免费在线观看| 久久亚洲中文字幕精品一区四| 一级a性色生活片久久无少妇一级婬片免费放 | 在线免费一区二区| 亚洲成年网站在线观看| 在线观看成人免费视频| 久久久久亚洲精品无码网址色欲| 白白国产永久免费视频| 国产亚洲精品美女久久久久 | 亚洲第一网站免费视频| 免费精品国产日韩热久久| 久久综合久久综合亚洲| 国产自产拍精品视频免费看| 一级毛片a免费播放王色电影 | 久久精品国产亚洲av水果派| 国产精品爱啪在线线免费观看| 亚洲精品第一综合99久久| 国产免费av片在线无码免费看| 亚欧乱色国产精品免费视频| 亚洲国产精品VA在线看黑人| 亚洲视频在线免费播放| 亚洲av日韩综合一区二区三区| 亚洲伊人久久综合影院| 免费A级毛片在线播放| 亚洲一卡2卡3卡4卡5卡6卡| 免费一级毛片在级播放| 青青操视频在线免费观看| 亚洲AV无码乱码麻豆精品国产| 在线观看免费成人| 免费无码又爽又刺激网站| 亚洲人成网站18禁止久久影院| 深夜国产福利99亚洲视频| 久久不见久久见免费视频7 | 最近高清中文字幕无吗免费看| 久久亚洲AV成人无码国产电影| 国产亚洲成av人片在线观看|