這篇文章主要介紹“Oracle數據庫的內存結構是什么”,在日常操作中,相信很多人在Oracle數據庫的內存結構是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Oracle數據庫的內存結構是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
創新互聯是一家集網站建設,久治企業網站建設,久治品牌網站建設,網站定制,久治網站建設報價,網絡營銷,網絡優化,久治網站推廣為一體的創新建站企業,幫助傳統企業提升企業形象加強企業競爭力。可充分滿足這一群體相比中小企業更為豐富、高端、多元的互聯網需求。同時我們時刻保持專業、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們為更多的企業打造出實用型網站。
每個數據庫實例有兩個關聯的內存結構—系統全局區(SGA),程序全局區(PGA)。
系統全局(SGA):一組共享的內存結構(稱為SGA 組件),其中包含一個OracleDB 實例的數據和控制信息。SGA 由所有服務器進程和后臺進程共享。SGA 中存儲的數據有高速緩存的數據塊和共享SQL 區域等;SGA的大小由參數sga_target決定。
程序全局區(PGA):包含某個服務器進程或后臺進程的數據及控制信息的內存區域。PGA 是Oracle DB 在服務器進程或后臺進程啟動時創建的非共享內存。服務器進程對PGA 的訪問是獨占式的。每個服務器進程和后臺進程都具有自己的PGA。PGA的大小由參數pga_aggregate_target決定。
SGA幾個關鍵組件做以說明:
共享池:shared pool,用于緩存可在用戶間共享的各種構造,比如給定SQL 語句的語法分析樹和執行計劃。
數據庫緩沖區高速緩存:buffer cache,從數據庫中檢索到的數據塊是緩存在此,數據塊從此內存組件對數據塊進行操作,降低了硬盤IO負擔,如果用戶進程所需的數據在該區域能很找到,我們稱之為高速緩存區命中,高的命中率反映出來的效果就是操作反應快,這點很好理解,數據庫優化中很有必要考慮這點。
在buffer cache中,存在以下的緩沖區:
(*)KEEP 緩沖區池:一種專用數據庫緩沖區高速緩存,用于長時間在內存中保留數據塊。一些頻繁使用的數據塊可相對長期的保留在此,不至于每次都從硬盤獲取,從而優化了數據庫的性能;
(*)RECYCLE 緩沖區池:一種專用數據庫緩沖區高速緩存,用于從內存中快速回收或刪除數據塊。相對于KEEP的對立面,很好理解;
(*) nK 緩沖區高速緩存:多種專用數據庫緩沖區高速緩存中的一種,用于存放大小不同于默認數據庫塊大小的數據塊。注意默認數據塊為8K
重做日志緩沖區:log buffer,用于存放有關對數據庫所做更改的信息,重做信息在寫入磁盤中重做日志文件(即redo文件)前,將緩存在此處。
大型池,用于為某些大型進程(例如Oracle 備份和恢復操作)和I/O 服務器進程提供大型內存分配。
Java池和流池
到此,關于“Oracle數據庫的內存結構是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注創新互聯網站,小編會繼續努力為大家帶來更多實用的文章!
網頁標題:Oracle數據庫的內存結構是什么
網站地址:http://vcdvsql.cn/article46/gjoehg.html
成都網站建設公司_創新互聯,為您提供移動網站建設、標簽優化、建站公司、品牌網站建設、App開發、商城網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯