oracle session和process的關係
什麼是session
通俗來講,session 是通訊雙方從開始通訊到通訊結束期間的一個上下文(context)。這個上下文是一段位於伺服器端的記憶體:記錄了本次連線的客戶端機器、透過哪個應用程式、哪個使用者在登入等資訊[在pl/sql developer中,透過Tools-->Sessions可以檢視當前資料庫的session]。session 是和connection同時建立的,兩者是對同一件事情不同層次的描述。簡單講,connection是物理上的客戶機同伺服器段的通訊鏈路,session是邏輯上的使用者同伺服器的通訊互動。session被應用於oracle層次而非作業系統層次.在不考慮透過專用伺服器或共享伺服器進行登入的情況下,這個引數限制了對指定例項的併發登陸數.
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。如果設定為非共享, 則每次開啟一個操作視窗,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進行響應。
什麼是process
process:這個引數限制了能夠連線到SGA的作業系統程式數(或者是Windows 系統中的執行緒數),這個總數必須足夠大,從而能夠適用於後臺程式與所有的專用伺服器程式,此外,共享伺服器程式與排程程式的數目也被計算在內.此外,共享伺服器程式與排程程式的數目也被計算在內.因此,在專用伺服器環境中,這是一種限制併發連線數的方法.
session與process的關係
oracle的連線數(sessions)與其引數檔案中的程式數(process)相關,它們的關係如下:sessions=(1.1*process+5),若果資源允許,而當前process 數過小,那麼可以適當增大processs 數( session 數依賴於process數,一般不去直接修改session數)。
Shared Server中的Process 一個對應著Oracle 中的一個或者一個以上的Session。Dedicated Server中,一個session對應一個process,但是一個process未必對應一個session。
如何修改session與process
v$session 每一個連線到資料庫例項中的session都擁有一條記錄。包括使用者session及後臺程式如DBWR,LGWR,arcchiver等等。
V$process 本檢視包含當前系統oracle執行的所有程式資訊。常被用於將oracle或服務程式的作業系統程式ID與資料庫session之間建立聯絡。
show parameter sessions 檢視當前session配置
show parameter processes 檢視當前process配置
alter system set processes=1000 scope=spfile 更改配置,更改完後需要重啟資料庫。
修改oracle配置檔案中process進行修改
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29802484/viewspace-1328480/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- session和cookie關係SessionCookie
- Cookie 和 Session 關係和區別CookieSession
- http中session和cookie的區別和關係HTTPSessionCookie
- Cookie與Session 關係CookieSession
- Process與Socket,Select與Accept關係
- 理解cookie、session、localStorage、sessionStorage的關係與區別CookieSession
- keycloak~關於session idle和session max的解釋Session
- 關於Session和CookieSessionCookie
- jre 和 jdk的關係JDK
- @SpringBootApplication和@SpringBootConfiguration的關係Spring BootAPP
- PassEncoder和Pipeline的關係
- ThymeleafViewResolver和SpringTemplateEngine和SpringResourceTemplateResolver的關係ViewSpring
- MySQL Oracle 查詢快慢和表的資料量多少有沒有關係?MySqlOracle
- 【ASK_ORACLE】Library cache pin 與 library load lock的關係和區別Oracle
- Oracle session traceOracleSession
- 程式和產品的關係
- flink jobmanager和taskmanager的關係
- 矩陣:橫向關係和縱向關係矩陣
- 關於Cookie、session和Web StorageCookieSessionWeb
- oracle 主外來鍵關係及實驗Oracle
- oracle設定process需要注意的事情Oracle
- iOS 中 UIView 和 CALayer 的關係iOSUIView
- repo和Git的關係 [轉載]Git
- IP地址和MAC地址的關係Mac
- cmsis和各種庫的關係
- HomeAssistantOS和docker的組織關係Docker
- 談談 JDK 和 SAPMachine 的關係JDKMac
- Python和人工智慧的關係Python人工智慧
- Oracle EBS中分類賬和法人實體 的關係(有sql語句例項)OracleSQL
- 關係型資料庫和非關係型資料庫的區別資料庫
- 如何檢視Oracle RAC的asm磁碟的udev對應關係OracleASMdev
- NIO中SelectionKey和Channel、Selector的關係
- 徹底搞懂Object和Function的關係ObjectFunction
- 理解JavaScript中BOM和DOM的關係JavaScript
- 【轉】QPS和併發數的關係
- Docker——理解好映象和容器的關係Docker
- ERP和MES:互補的夥伴關係
- 聊聊人工智慧和Python的關係人工智慧Python
- Window, WindowManager和WindowManagerService之間的關係