首先,我們來了解一下Oracle的記憶體結構,如下:

關于Oracle的記憶體結構,詳情請查看:【趙強老師】Oracle資料庫的記憶體結構
(一)PGA的組成結構
PGA主要由以下三部分組成:
- 私有SQL區(Private SQL Area):私有SQL區包含了系結變數值和運行時期記憶體結構資訊等資料,
- 游標和SQL區(Cursors and SQL Areas):為打開游標和執行SQL提供必要的資源和空間記憶體
- 會話記憶體(Session Memory):會話記憶體是一段用于保存會話變數(如登錄資訊)和其他預會話相關資訊的記憶體,對于共享服務器模式下,會話記憶體是共享的,而不是私有的,
(二)PGA相關的資料字典
- V$PGASTAT:存盤著pga使用情況的一些資訊,并在實體啟動后,自動收集pga的實用資訊,
- V$PGA_TARGET_ADVICE:這個視圖是可以顯示PGA優化建議器的估算預測結果,它顯示了在各種PGA_AGGREGATE_TARGET值時,V$PGASTAT可能會顯示的PGA性能統計資料,
(三)PGA與連接建立的程序
如下圖所示,客戶端先從tnsnames.ora檔案中獲取資料庫服務器所在的IP、埠號、使用協議、服務名等資訊,然后連接到資料庫的監聽程式,監聽判斷用戶請求的服務名是否有效,如有效則請求服務器后臺行程創建一個服務器行程,并給其分配PGA,之后監聽將創建好的服務器程式的埠號和地址發送給用戶行程,隨后用戶行程與監聽的連接斷開,用戶行程就可以根據資訊連接到服務器行程,服務器行程對用戶行程進行身份驗證,通常是輸入賬號密碼,服務器行程將賬號密碼與緩沖區的資料字典中的內容進行匹配,如匹配成功則會話建立,

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/5504.html
標籤:Oracle
下一篇:MyBatis
