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

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

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

    MDA/MDD/TDD/DDD/DDDDDDD
    posts - 536, comments - 111, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    關于oracle的session

    Posted on 2009-10-03 02:07 leekiang 閱讀(1546) 評論(0)  編輯  收藏 所屬分類: oracle
    比如用"TEST"用戶通過plsqldevleper登錄,
    執行select * from v$session t where t.USERNAME='TEST';
    會看到至少兩條記錄,其中action列為Main session的是plsqldevleper固有的,
    每一個SQL Window都會有一個session,action顯示為"SQL Window - New"
    當前window對應的session的STATUS列顯示為ACTIVE,其他顯示為"INACTIVE",
    搞不明白"INACTIVE"的session為何還會顯示,什么時候不顯示呢?
    至于查看當前session的ID,用 select distinct sid from v$mystat;

    順便記錄一下v$mystat,v$sesstat和v$sysstat的區別
    按照OracleDocument中的描述,v$sysstat存儲自數據庫實例運行那刻起就開始累計全實例(instance-wide)的資源使用情況,
    我覺得可以理解為是許多綜合性、全局性的指標
    ,比如總登錄次數(logons cumulative)
    如果從v$sysstat查得有347個指標,那么v$mystat(表示當前session的情況)相應的也有347個指標,
    v$sesstat包括了所有session(包括活動的和不活動的)的指標的值,當然也就囊括了v$mystat,其記錄數為347*25(如果有25個session的話)=8675,
    至于指標號"STATISTIC#"表示的含義,可從v$statname查得。


    在B/S系統中,頁面紛繁復雜,而且經過系統長時間運行,如果發現某個session的wait比較嚴重,進行sql優化時,很難知道這個sql是用在程 序的哪個模塊,很多時候只能根據開發人員的經驗來定位這個sql,或者打開程序代碼,搜索。這樣的效率很低,這里介紹一個方法來快速定位發生問題的sql 的位置。
    ORACLE提供了DBMS_APPLICATION_INFO包,其中提供了set_client_info、set_module、 set_action、read_module、read_client_info、set_session_longops幾個過程,其中分別用于設置 客戶端信息、設置module信息(這里同時必須設置一個action信息)、設置action信息、讀取module信息(同時也會得到action信 息)、讀取client_info信息和手動設置一個會話為longops。
    exec dbms_application_info.set_client_info('test client info');
    exec dbms_application_info.set_module(module_name => 'test module',action_name => 'test action');
    http://zhang41082.itpub.net/post/7167/305794

    How to trace the connection pool in a Java Web application - DBMS_APPLICATION_INFO
    http://stackoverflow.com/questions/829302/how-to-trace-the-connection-pool-in-a-java-web-application-dbmsapplicationinf
    http://stackoverflow.com/questions/53379/using-dbmsapplicationinfo-with-jboss
    http://www.mailinglistarchive.com/java-dev@lists.apple.com/msg10280.html


    使用v$sysstat中的數據
    該視圖中數據常被用于監控系統性能。如buffer cache命中率、軟解析率等都可從該視圖數據計算得出。
    該視圖中的數據也被用于監控系統資源使用情況,以及系統資源利用率的變化。正因如此多的性能數據,檢查某區間內系統資源使用情況可以這樣做,在一個時間段開始時創建一個視圖數據快照,結束時再創建一個,二者之間各統計項值的不同(end value - begin value)即是這一時間段內的資源消耗情況。這是oracle工具的常用方法,諸如Statspack以及BSTAT/ESTAT都是如此。
    為了對比某個區間段的數據,源數據可以被格式化(每次事務,每次執行,每秒鐘或每次登陸),格式化后數據更容易從兩者中鑒別出差異。這類的對比在升級前,升級后或僅僅想看看一段時間內用戶數量增長或數據增加如何影響資源使用方面更加實用。
    你也可以使用v$sysstat數據通過查詢v$system_event視圖來檢查資源消耗和資源回收。
    參見http://www.cnblogs.com/jimeper/archive/2008/03/30/1129431.html
    該文后面有這樣一句話
    人生有三寶:終身運動,終身學習,終身反省.吸收新知,提高效率,懂得相處,成就自己,也成就他人,創造最
    高價值。

    ORACLE的連接數(sessions)與其參數文件中的進程數(process)有關,它們的關系如下:
      sessions=(1.1*process+5)
      但是我們增加process數時,往往數據庫不能啟動了。這因為我們還漏調了一個unix系統參數:它是/etc/system/ 中semmns,這是unix系統的信號量參數。每個process會占用一個信號量。semmns調整后,需要重新啟動unix 操作系統 ,參數才能生效。不過它的大小會受制于 硬件 的內存或ORACLE SGA。范圍可從200-2000不等。

      semmns的計算公式為:SEMMNS > processes + instance_processes + system processes = 數據庫參數processes的值 instance_processes = 5(smon,pmon,dbwr,lgwr,arch)
      system=系統所占用信號量。
      系統所占用信號量可用下列命令查出:#ipcs -sb
      其中列NSEMS顯示系統已占用信號量。
      其它一些跟連接有關的參數,如 licence_max_sessions, licence_sessions_warning 等默認設置都為零,也就是沒有限制。

    主站蜘蛛池模板: 18禁超污无遮挡无码免费网站| 亚洲av无码不卡私人影院| 国产精品高清免费网站| 涩涩色中文综合亚洲| 亚洲AV无码国产精品色午友在线 | 久操免费在线观看| 相泽南亚洲一区二区在线播放| 亚洲码一区二区三区| 亚洲欧洲精品无码AV| 亚洲国产精品成人AV无码久久综合影院| 青草草色A免费观看在线| 日本黄色动图免费在线观看| 一级做a爰黑人又硬又粗免费看51社区国产精品视| 亚洲另类精品xxxx人妖| 亚洲AV日韩AV天堂久久| 亚洲精品~无码抽插| 亚洲中文字幕无码专区| 免费国产一级特黄久久| 日韩在线视频免费看| 日本XXX黄区免费看| 免费观看国产网址你懂的| 日本在线免费观看| 成人电影在线免费观看| 香蕉视频在线免费看| 在线播放免费人成视频网站| 国产亚洲日韩在线a不卡| 亚洲av乱码一区二区三区按摩| 亚洲夂夂婷婷色拍WW47| 亚洲熟女综合一区二区三区| 亚洲 欧洲 视频 伦小说| 亚洲Av高清一区二区三区| 亚洲国产成+人+综合| 77777亚洲午夜久久多喷| 亚洲AV色吊丝无码| 最新亚洲卡一卡二卡三新区| 亚洲欧洲日本在线观看| 亚洲免费福利在线视频| 亚洲午夜精品久久久久久app | 日韩一品在线播放视频一品免费| 成年男女免费视频网站| 成在人线AV无码免费|