一、資料庫
資料庫顧名思義是資料的集合,而Oracle則是管理這些資料集合的軟體系統,它是一個對象關係型的資料庫管理系統。
二、資料表空間
資料表空間是Oracle對物理資料庫上相關資料的邏輯映射,一個資料庫在邏輯上被劃分成一到若干個資料表空間,每個資料表空間包含了在邏輯上相關聯的一組結構,每個資料庫至少有一個資料表空間(稱之為System資料表空間)。
每個資料表空間由同一磁碟上的一個或多個檔案組成,這些檔案叫資料檔案(datafile),一個資料檔案只能屬於一個資料表空間。
資料庫、資料表空間、資料檔案的關係如所示:
從上面這幅圖可以看出以下幾點:
1、每一個資料庫都從邏輯上被劃分成一個或多個資料表空間;
2、每一個資料表空間由一到多個的資料檔案構成;
3、每一個資料表空間的儲存大小等於其所有資料檔案的大小之和;
4、每一個資料庫的儲存大小等於其所有的資料表空間的大小之和;
5、一個資料檔案只能屬於一個資料表空間;
6、一個資料表空間只能屬於一個資料庫;
三、執行個體
每一個運行中的資料庫都對應著一個Oracle執行個體,當伺服器上的Oracle資料庫啟動時,Oracle首先會在記憶體中分配一片地區——稱之為System Global Area(SGA),然後啟動一個或多個Oracle進程。
SGA和這些進程合起來就稱為一個Oracle的執行個體,執行個體中的記憶體和進程管理器用來高效地訪問資料庫的資料,同時為單個或多個的使用者提供服務。
一個資料庫可以由多個執行個體開啟,但任何時刻一個執行個體只能開啟一個資料庫,多個執行個體可以同時運行在同一個機器上,它們彼此訪問各自獨立的物理
資料庫。(如果一個資料庫同時被多個執行個體開啟,那麼將可以由多個使用者訪問其中的表,那麼是否在此種情況下資料的訪問、操作也將用到鎖機制呢?)。 當執行個體啟動之後,Oracle會把這個執行個體以及其對應的物理資料庫關聯起來,這個過程稱為“載入”(Mounting),這個時候資料庫將
處於準備開啟狀態,資料庫在開啟之後 就可以對資料庫進行操作了,(不是載入了資料庫之後就可以對資料庫進行操作了,還要經過開啟這個步驟)。
執行個體是記憶體加後台進程,資料表空間是用來存放資料檔案的,是一個邏輯概念