Oracle session簡介

來源:互聯網
上載者:User

什麼是session
通俗來講,session 是通訊雙方從開始通訊到通訊結束期間的一個上下文(context)。這個上下文是一段位於伺服器端的記憶體:記錄了本次串連的用戶端機器、通過哪個應用程式、哪個使用者在登入等資訊[在pl/sql developer中,通過Tools-->Sessions可以查看當前資料庫的session]。session 是和connection同時建立的,兩者是對同一件事情不同層次的描述。簡單講,connection是物理上的客戶機同伺服器段的通訊鏈路,session是邏輯上的使用者同伺服器的通訊互動。

Oracle中一個使用者登入oracle伺服器的前提,就是該使用者具有oracle的 “create session”許可權。oracle允許同一個使用者在同一個客戶機上建立多個同伺服器的串連,這一點從oracle的視圖V$session中可以看到[select * from v$session;]。每個session都代表了使用者與伺服器的一個互動。就像兩個國家之間可以同時開展很多談判,經濟的,環境的等等。關閉了有關經濟的談判,不會影響到環境談判的進行。後台進程PMON會每隔一段時間,就會測試使用者串連狀況,如果串連已斷開,PMON會清理現場,釋放相關的資源。

在具體的應用情境中connction 和 session 有很多情況:
1. sqlplus 登入 oracle
這種情境比較容易理解,一個串連對應一個session。

2. 其他用戶端工具登入oracle
比如:pl/sql developer 登入oracle。pl/sql developer 可以設定是否每個視窗共用同一個session. 如果想在調試視窗調試預存程序或函數,則必須設定為共用session。如果設定為非共用, www.bkjia.com則每次開啟一個操作視窗,pl/sql developer 會利用最初輸入的帳戶和口令建立新的connection 和 session.

3. IIS 用程式登入oracle
這種情況下,其實是IIS在登入oracle。connection 和 session 的建立情況和iis機制相關。
“對於Oracle來說,安全的Sessions數應該為Sessions = (IIS process number) * (min pool size)。”
IIS進程:在IIS6.0中,採用了新的進程隔離模式來響應使用者的請求,在IIS管理器中,可以設定應用程式集區的最大進程數。對於新的WEB應用請求,IIS進程管理器會啟動多個W3wp.exe進行響應。

4、 其他情況 有待各路英雄補充

orcale的session記憶體
oracle 的串連分為兩種:獨佔式,共用式。
在獨佔式串連情況下,session(如遊標,排序去,sql區)是在PGA中分配的。
在共用式串連情況下,session的一部分(如UGA)是在中SGA的larg pool中分配的。

oracle session 和process
oracle中每個process 都有對應的session。
process 分為
使用者進程在V$session 中可用條件:$session.type = ‘USER’.查詢。
後台進程在V$session 中可用條件:$session.type = ‘BACKGROUND’查詢。

常見的後台進程:
SMON,PMON,DBWR,LGWR,MMAN,MRP, RFS,RECO,CKPT,ARCH,Dnnn,Snnn,LMON,LMD0,QMNn,TRWR,WMON,LCKnnn,SNPnnn, MMON,DMON,SNP

session 相關的初始化參數:
process:oracle的串連數(sessions)與其參數檔案中的進程數(process)相關,它們的關係如下:sessions=(1.1*process+5),我們可以通過修改inia.ora的這個process參數在更改可串連的最大session數。
workarea_size_policy:PGA用手動管理還是自動管, 在AUTO的時候每個session最多能用到5%或100M.

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.