ORACLE系統概述(4)
ORACLE執行
1) 使用專用服務程式的ORACLE的執行
在這種配置下,ORACLE執行過程如下:
(1) 資料庫伺服器計算機當前正在執行ORACLE(後臺程式)。
(2) 在一客戶工作站執行一個資料庫應用(為使用者程式),如SQL*PLUS。客戶應用使用SQL*NET DRIVER建立對伺服器的連線。
(3) 資料庫伺服器計算機當前正執行合適的SQL*NET DRIVER,該機上接收器程式檢出客戶資料庫應用的連線請求,並在該機上為使用者程式建立專用伺服器程式。
(4) 使用者發出單個SQL語句。
(5) 專用伺服器程式接收該語句,在此處有兩種方法處理SQL語句:
如果在共享池一共享SQL區中包含有相同SQL語句時,該伺服器程式可利用已存在的共享SQL區執行客戶的SQL語句。
如果在共享池中沒有一個SQL區包含有相同的SQL語句時,在共享池中為該語句分配一新的共享SQL區。
在每一種情況,在會話的PGA中建立一個專用SQL區,專用伺服器程式檢查使用者對查詢資料的存取許可權。
(6) 如果需要,伺服器程式從資料檔案中檢索資料塊,或者可使用已儲存在例項SGA中的緩衝儲存區的資料塊。
(7) 伺服器程式執行儲存在共享SQL區中的SQL語句。資料首先在SGA中修改,由DBWR程式在最有效時將它寫入磁碟。LGWR程式在線上日誌檔案中記錄使用者提交請求的事務。
(8)如果請求成功,伺服器將透過網路傳送一資訊。如果請求不成功,將傳送相應的錯誤資訊。
(9)在整個過程中,其它的後臺程式是執行的,同時注意需要干預的條件。另外,ORACLE管理其它事務,防止不同事務之間請求同一資料的競爭。
2) 使用多線索伺服器的ORACLE的執行
在這種配置下,ORACLE執行過程如下:
(1) 一資料庫伺服器計算機執行使用多線索伺服器配置的ORACLE。
(2) 在一客戶工作站執行一資料庫應用(在一使用者程式中)。客戶應用合適的SQL*NET驅動器試圖建立到資料庫伺服器計算機的連線。
(3) 資料庫伺服器計算機當前執行合適的SQL*NET驅動器,它的網路接收器程式檢出使用者程式的連線請求,並決定使用者程式如何連線。如果使用者是使用SQL*NET版本2,該網路接收器通知使用者程式使用一個可用的排程程式的地址重新連線。
(4) 使用者發出單個SQL語句
(5) 排程程式將使用者程式的請求放入請求佇列,該佇列位於SGA中,可為所有排程程式共享。
(6) 一個可用共享伺服器檢驗公用排程程式請求佇列,並從佇列中檢出下一個SQL語句。然後處理該SQL語句,同前一(5),(6)和(7)。注意:會話的專用SQL區是建立在SGA中。
(7) 一當共享伺服器程式完成SQL處理,該程式將結果放置發入該請求的排程程式的響應佇列。
(8) 排程程式檢查它的響應佇列,並將完成的請求送回請求的使用者程式。[@more@]
1) 使用專用服務程式的ORACLE的執行
在這種配置下,ORACLE執行過程如下:
(1) 資料庫伺服器計算機當前正在執行ORACLE(後臺程式)。
(2) 在一客戶工作站執行一個資料庫應用(為使用者程式),如SQL*PLUS。客戶應用使用SQL*NET DRIVER建立對伺服器的連線。
(3) 資料庫伺服器計算機當前正執行合適的SQL*NET DRIVER,該機上接收器程式檢出客戶資料庫應用的連線請求,並在該機上為使用者程式建立專用伺服器程式。
(4) 使用者發出單個SQL語句。
(5) 專用伺服器程式接收該語句,在此處有兩種方法處理SQL語句:
如果在共享池一共享SQL區中包含有相同SQL語句時,該伺服器程式可利用已存在的共享SQL區執行客戶的SQL語句。
如果在共享池中沒有一個SQL區包含有相同的SQL語句時,在共享池中為該語句分配一新的共享SQL區。
在每一種情況,在會話的PGA中建立一個專用SQL區,專用伺服器程式檢查使用者對查詢資料的存取許可權。
(6) 如果需要,伺服器程式從資料檔案中檢索資料塊,或者可使用已儲存在例項SGA中的緩衝儲存區的資料塊。
(7) 伺服器程式執行儲存在共享SQL區中的SQL語句。資料首先在SGA中修改,由DBWR程式在最有效時將它寫入磁碟。LGWR程式在線上日誌檔案中記錄使用者提交請求的事務。
(8)如果請求成功,伺服器將透過網路傳送一資訊。如果請求不成功,將傳送相應的錯誤資訊。
(9)在整個過程中,其它的後臺程式是執行的,同時注意需要干預的條件。另外,ORACLE管理其它事務,防止不同事務之間請求同一資料的競爭。
2) 使用多線索伺服器的ORACLE的執行
在這種配置下,ORACLE執行過程如下:
(1) 一資料庫伺服器計算機執行使用多線索伺服器配置的ORACLE。
(2) 在一客戶工作站執行一資料庫應用(在一使用者程式中)。客戶應用合適的SQL*NET驅動器試圖建立到資料庫伺服器計算機的連線。
(3) 資料庫伺服器計算機當前執行合適的SQL*NET驅動器,它的網路接收器程式檢出使用者程式的連線請求,並決定使用者程式如何連線。如果使用者是使用SQL*NET版本2,該網路接收器通知使用者程式使用一個可用的排程程式的地址重新連線。
(4) 使用者發出單個SQL語句
(5) 排程程式將使用者程式的請求放入請求佇列,該佇列位於SGA中,可為所有排程程式共享。
(6) 一個可用共享伺服器檢驗公用排程程式請求佇列,並從佇列中檢出下一個SQL語句。然後處理該SQL語句,同前一(5),(6)和(7)。注意:會話的專用SQL區是建立在SGA中。
(7) 一當共享伺服器程式完成SQL處理,該程式將結果放置發入該請求的排程程式的響應佇列。
(8) 排程程式檢查它的響應佇列,並將完成的請求送回請求的使用者程式。[@more@]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/18921899/viewspace-1016779/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE系統概述(轉)Oracle
- Linux系統管理-系統概述Linux
- 推薦系統概述
- 作業系統(1)——作業系統概述作業系統
- 作業系統(一):作業系統概述作業系統
- 資料庫系統概述資料庫
- Linux作業系統概述Linux作業系統
- Oracle體系結構概述與SQL解析剖析OracleSQL
- 4.1.1 Oracle Restart概述OracleREST
- 「MoreThanJava」計算機系統概述Java計算機
- Oracle Stream概述與配置Oracle
- 大系統觀:第2章系統論概述
- 概述nodejs模組系統核心原理NodeJS
- 計組讀記 1:系統概述
- 資料庫系統設計概述資料庫
- 元宇宙系統概述與介紹元宇宙
- 作業系統學習(1)-概述作業系統
- Oracle Data Guard和Broker概述Oracle
- 分散式資料庫系統(DDBS) 概述分散式資料庫
- 【作業系統】記憶體管理概述作業系統記憶體
- 動作遊戲系統設計概述遊戲
- 嵌入式Linux系統libmosquitto移植概述LinuxIBMUI
- 第1章 計算機系統概述計算機
- Oracle 備份 與 恢復 概述Oracle
- ORACLE 控制檔案(Control Files)概述Oracle
- 【TUNE_ORACLE】Oracle Hint之常用Hint功能概述(五)Oracle
- 【TUNE_ORACLE】Oracle Hint之常用Hint功能概述(四)Oracle
- 【TUNE_ORACLE】Oracle Hint之常用Hint功能概述(三)Oracle
- 【TUNE_ORACLE】Oracle Hint之常用Hint功能概述(二)Oracle
- 【TUNE_ORACLE】Oracle Hint之常用Hint功能概述(一)Oracle
- 第一章 作業系統概述作業系統
- 社交 App 系統 ThinkSNS+ PHP 開發概述APPPHP
- 備戰軟考06——作業系統概述作業系統
- 【ARM架構】armv8 系統安全概述架構
- Oracle ERP系統排名?什麼是使用者口碑最好的Oracle ERP系統?Oracle
- 王道 OS CH-1 計算機系統概述計算機
- 資料庫系統的基本原理(概述)資料庫
- 資料庫與資料庫管理系統概述資料庫
- 2021年3月2日 推薦系統概述