oracle資料庫和資料庫例項

2021-06-13 23:16:23 字數 2277 閱讀 2058

oracle中的資料庫和資料庫例項

oracle的體系結構簡單來分的話,分成2部分--資料庫(database)和資料庫例項(database instance)。

這是個容易搞糊塗的概念,在sql server裡面,你在你的機器上安裝一次sql server,那麼你就等於安裝了一次資料庫例項,在這個例項中可以以包含很多資料庫,也就是資料庫:例項=n:1。

但是在oracle中就不是這樣的。oracle中的資料庫和資料庫例項=1:n(這個後面說明)

概念:

資料庫:顧名思義,簡單理解就是資料的集合,資料的表現和集中就是資料庫檔案的集合。在oracle中資料庫檔案有很多種,最常見的有引數檔案、資料檔案、臨時檔案、控制檔案和重做日誌檔案。另外還有一些跟蹤檔案、警告檔案、轉儲檔案之類的。

資料庫例項:它就是一組oracle的後台程序/執行緒和共享記憶體區域的組合,這些記憶體由計算機上的程序/執行緒使用。而這些程序是可以用來運算元據庫的。

關聯:

一般情況下,資料庫和例項是一對一的。伺服器裡有2個資料庫,就對應有2個例項名。

另外情況就是在真正應用集群的時候(rac)下,這個時候有多個例項同時開啟乙個資料庫。

一台機器上擁有多個資料庫,任意時間點只有乙個例項能訪問任意有乙個資料庫。

衍生:

資料庫名(db_name):它是乙個資料庫內部的名字,不和外來鍵有聯絡,用以區分資料的內部標識,oracle資料庫的內部標識,以二進位制形式儲存於資料庫控制檔案內部的引數(db_name),安裝或者建立後不得修改。在建立資料庫,修改資料庫結構(alter database ***x的時候),進行備份等都需要用到,資料庫的物理結構目錄很多都用到了資料庫名。

查詢資料庫名方法:

1 select name from v$database;

2 show parameter db_name;

3.去引數檔案裡面查詢..

資料庫例項名(instance_name):

1。它是作用與資料庫和作業系統(os)之間的聯絡,資料庫和外部的聯絡都靠它。外部與資料庫服務的鏈結並不是通過資料庫名,而是通過這個例項名來進行聯絡的。它存在於引數檔案中(instance_name),建立後可以修改。

我們平時說的oracle_sid也常常用來表示資料庫例項名。它與instance_name的區別在於它是系統的環境變數,而後者是oracle資料庫的內部引數。作業系統要得到例項名,必須通過這個oracle_sid來得到。它在資料庫建立完後就被自動定義成與資料庫例項名相同的值。.

2。它還作用於對外網路的連線。配置網路連線就是配置網路連線串。根據網路驅動版本的不同,連線串的構成也不同。較老版本一般使用例項名構成,較新的版本一般使用資料庫服務名構成。--後面介紹資料庫服務名

全域性資料庫名(db_domain):資料庫名+資料庫網域名稱組合而成,在資料遠端的時候必須使用全域性資料庫名。

這裡涉及到乙個資料庫網域名稱的概念,它類似網路中網域名稱,使得資料庫的取名在整個網路環境中唯一。

使用資料庫網域名稱的必要條件:

1.分布環境下,進行資料的遠端傳輸。

2.在同一網路環境下,資料庫相同。

查詢網域名稱方法:

1.select value from v$parameter where name='db_domain';

2.show paramter db_domain;

3.在引數檔案裡面查詢

資料庫服務名(service_name):它的值首先取值於是否使用了資料庫網域名稱,如果沒有網域名稱,則值為資料庫名,反之,則為全域性資料庫名。

查詢資料庫服務名的方法:

1 select value from v$parameter where nane='service_name';

2.show parameter service_name;

3.檢視引數檔案

查詢資料庫例項名方法:

1 select instance_name from v$instance;

2 show parameter instance_name;

3 在引數檔案裡面檢視 instance_name

資料庫和資料庫例項

以前一直把資料庫和資料庫例項弄混淆,最近讀 mysql 技術內幕 innodb 儲存引擎 得到了答案。資料庫 物理作業系統檔案或其他形式檔案型別的集合。在mysql資料庫中,資料庫檔案可以是frm myd myi ibd結尾的檔案。例項 mysql資料庫和後台執行緒以及乙個共享記憶體區組成。共享記憶...

oracle概念 例項和資料庫

資料庫程式,一般都要使用計算機的記憶體和持久儲存裝置 例如磁碟 進行操作。磁碟提供了持久儲存和儲存大量資訊的空間。但是,從磁碟中獲得資訊要比從記憶體中獲取資訊的速度慢很多,因此,很多資料庫引擎利用記憶體來快取資訊,從而加快資料的訪問速度。資訊如何儲存和從什麼地方獲取對於終端查詢使用者來說是透明的,但...

資料庫和資料庫例項的概念

很多人都把這兩個概念弄混淆,認為mysql是資料庫,也是資料庫例項。這樣的理解在應用到oracle和sql server的時候可能是正確的,但是再mysql的體系結構中確是不適用的。那麼從概念上理解,該如何區分資料庫和資料庫例項呢?資料庫 資料庫是檔案的集合,是依照某種資料模型組織起來並存放於二級儲...