顯示具有 [Oracle 基礎介紹]2-2. 共享記憶體(SGA) 標籤的文章。 顯示所有文章
顯示具有 [Oracle 基礎介紹]2-2. 共享記憶體(SGA) 標籤的文章。 顯示所有文章

2014年12月1日 星期一

共享記憶體(System Global Area;SGA)

之所以稱為共享記憶體(System Global Area;SGA),是因為它可以被Oracle所在的作業系統上所有的使用者連線和程序來共用其中的資料,SGA幾個基本的特性依序如下:
  • SGA是由系統的記憶體所構成的裡面儲存了資料、使用者資訊和控制資訊。
  • 一個SGA只能服務於一個Instance,也就是說,當一台伺服器上有多個Instance運作時,每個Instance都有一個自己專屬的SGA,雖然同一台伺服器上SGA都是來自於作業系統上的記憶體,但Instance之間不能相互交流對方的SGA。
  • SGA是共用的,當有多個使用者連線到了這個Instance,SGA中的資訊可以同時被所有使用者同時使用,當然這牽涉了鎖定等等問題。
  • Oracle Process和一個SGA就可以構成了一個Oracle Instance。當Instance啟動時,Oracle會自動從作業系統中分配設定好的記憶體給SGA,而當Instance關閉時,作業系統會回收這些記憶體。下面就是當Instance啟動後,顯示已經分配了SGA的架構。