Oracle資料庫------體繫結構

来源:http://www.cnblogs.com/windy852/archive/2017/06/01/6090178.html
-Advertisement-
Play Games

ORACLE體繫結構包括:實例(Instance),資料庫文件,用戶進程(User process),伺服器進程以及其他文件。 1.ORACLE實例(instance) 1).要訪問資料庫必須先啟動實例,實例啟動時先分配記憶體區,然後再啟動後臺進程,後他進程執行資料庫的輸入,輸出以及監控其他進程。 在 ...


ORACLE體繫結構包括:實例(Instance),資料庫文件,用戶進程(User process),伺服器進程以及其他文件。

1.ORACLE實例(instance)

    1).要訪問資料庫必須先啟動實例,實例啟動時先分配記憶體區,然後再啟動後臺進程,後他進程執行資料庫的輸入,輸出以及監控其他進程。

     在資料庫啟動的過程中 一下五個進程必須啟動:

        1.SMON(系統監控進程)

        2.PMON(進程監控)

        3.DBWR(資料庫寫進程)

        4.LGWR(日誌寫進程)

        5.CKPT(檢驗點進程)

    2).Oracle資料庫實例由記憶體區和後臺進程組成

       (1.)記憶體區:資料庫高速緩存,重做日誌緩存,共用池,流池以及其他可選記憶體區(如java池),這些池也稱為資料庫的記憶體結構

       (2.)後臺進程:系統監控進程(SMON),進程監控(PMON),資料庫寫進程(DBWR),日誌寫進程(LGWR),檢驗點進程(CKPT),其他進程等。

2.ORACLE伺服器(Server)

    1).Oracle是伺服器由資料庫實例和資料庫文件組組成,即常說的資料庫管理系統。

    2).資料庫伺服器除了維護實例和資料庫文件以外,還在用戶建立與資料庫連接時啟動伺服器進程並分配PGA(程式全局區)

3.物理結構

    1).數據文件

    2).控制文件

    3).重做日誌文件

4.Oracle資料庫的鏈接與會話

    1).鏈接:鏈接是指客戶端進程與資料庫實例之間的物理線路------網路連接

    2).會話:指一個明確的資料庫連接,即存在於實例中的邏輯實體

5.Oracle資料庫的記憶體結構

    1).SGA(系統全局區):包含幾個重要的記憶體區,資料庫高速緩存,重做日誌緩存,共用池,大池和java池。

       (1.)共用池(shared pool):共用SQL或PL/SQL代碼

                共用池由庫高速緩存數據字典高速緩存組成

                庫高速緩存(大小不可手動調節):存儲了最近使用過的sql或pl/sql語句,庫高速緩存容量有限,不能超過共用池的大小,Oracle採用LRU演算法管理庫高速緩存。

                數據字典高速緩存:與數據字典有關的一段緩衝區,存儲數據文件,表,索引,列,用戶,許可權信息和其他的一些資料庫對象的定義。就是把相關的數據字典信息放入緩存以提高查詢響應時間。

                設置及查看共用池大小

                alter system set shared_pool_size=20M;

                show parameter shared_pool_size;

 

        (2.)資料庫高速緩存

                存儲了最近從數據文件讀入的數據塊信息或用戶更改後需要寫回資料庫的信息,此時這些更改後沒有提交給資料庫的信息稱為臟數據。

                置及查看庫高速緩存的大小

                alter system set db_cache_size=200M;

                show parameter db_cache_size;(parameter:參數)

                show sga;//查詢sga的分配情況

 

                緩衝區顧問參數(Buffer Cache Advisory Parameter):目的是讓Oracle對於資料庫緩衝區的記憶體分配提供一些建議,用於啟動或關閉統計信息。

 

        (3.)重做日誌緩存

                當用戶執行了insert,update,delete,create,alter和drop操作時,數據發生了變化,這些發生率變化的數據在寫入資料庫高速緩存之前會先寫入重做日誌緩                               存區,同時變化之前的數據也放入重做日誌高速緩存區,這樣在數據恢復時,Oracle就知道哪些需要前滾,哪些需要後滾。

                重做日誌緩存區參數(log_buffer)是靜態參數,不能動態修改

                查看重做日誌緩衝區的大小

                show parameter log_buffer;

 

        (4.)大池和java池

                大池(Large Pool)是SGA的一段可選記憶體區,只在共用伺服器環境中配置大池,用戶進程區UGA的大部分將在大池中分配,可以減輕共用池的負擔。在大規模輸,入輸出及備份過程中也需                   要大池作為緩存空間。large_power_size設置大池的大小。

                show parameter large_power_szie;

                java池也是可選的一段記憶體區、但是安裝了java語言或者使用java程式時必須設置java池,用於編譯java語言編寫的指令。java_pool_size設置java池的大小。

                show parameter java_pool_size;

    2).PGA(進程全局區):伺服器進程專用的一塊記憶體


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Linux下如何查看使用YUM安裝過的包的安裝路徑呢? 在搞清楚這個問題前,我們先來瞭解一下YUM。 YUM(全稱為 Yellow dog Updater, Modified)是一個在Fedora和RedHat以及CentOS中的Shell前端軟體包管理器。基於RPM包管理,能夠從指定的伺服器自動下... ...
  • 平時工作中用到linux的操作命令較多,因此為了方便,就給電腦裝了雙系統,一般工作的時候,都選擇進入linux系統。但是今天有件工作之外的事情需要解決下:創建一個windows啟動盤。如果按照往常來說,我會啟動windows,然後用xxx工作製作u盤啟動工具,傻瓜式的創建啟動盤。但是今天不想再重啟系 ...
  • 從.netCore開源項目來看,eShopOnContainers來說,它的部署是跨平臺的,可以部署在linux,docker上,在linux上運行它也可以寫一些集成的小腳本,這是微信工程師為我們提供一個部署發佈方案的SH腳本 上面的解決主要體現了發佈時用的一些命令,如數組,遍歷,條件語句,刪除文件 ...
  • 參考 http://www.cnblogs.com/zhaopengcheng/p/6017855.html 使用x11vnc作為vncserver端 1 安裝x11vnc 2 生成密碼 3 開啟服務 ps:之前遇到了用vnc-viewer連接,鍵盤Caps Lock和小鍵盤錯位的問題,加上選項 然 ...
  • 1. 常用命令 ...
  • 今天使用find命令查找刪除文件時,遇到下麵錯誤,這個是因為在{}和\之間必須要有空格,否則會報上面的錯。 以前都沒有註意到這個細節,特此記錄一下。 [root@DB-Server full]# find . -maxdepth 1 -type d -mtime +3 -exec rm -rf {} ...
  • SELECT * FROM (SELECT a.*,rownum row_num FROM (SELECT etpcode,etpename FROM tetp c ORDER BY c.etpcode DESC ) a ) b WHERE b.row_num BETWEEN 1 AND 2 ...
  • 最近在編寫一個小型基於的jsp系統開發。掌握資料庫一直感覺還不錯。但是今天就出現了一個問題困擾我大半天。後來本來準備睡覺,但是覺得今天不解決這個問題恐怕晚上是“徹夜難眠啊”!!於是打開電腦,又開始搗騰。遇到問題首先去網上search了一下。但是大多數的結果只能說:只能遠看而不能解決我的問題。 首先我 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...