資料庫與例項

2021-06-01 23:56:36 字數 2158 閱讀 7838

剛接觸oracle的人肯定會對例項和資料庫感到困惑,例項到底代表些什麼?為什麼會有這個概念的出現?

oracle例項 = 程序 + 程序所使用的記憶體(sga)

例項是乙個臨時性的東西,你也可以認為它代表了資料庫某一時刻的狀態!

資料庫 = 重做檔案 + 控制檔案 + 資料檔案 + 臨時檔案

資料庫是永久的,是乙個檔案的集合。

oracle例項和資料庫之間的關係

1.臨時性和永久性

2.例項可以在沒有資料檔案的情況下單獨啟動 startup nomount , 通常沒什麼意義

3.乙個例項在其生存期內只能裝載(alter database mount)和開啟(alter database open)乙個資料庫

4.乙個資料庫可被許多例項同時裝載和開啟(即rac),rac環境中例項的作用能夠得到充分的體現!

下面對例項和資料庫做詳細的詮釋:

在oracle領域中有兩個詞很容易混淆,這就是「例項」(instance)和「資料庫」(database)。作為oracle術語,這兩個詞的定義如下:

q資料庫(database):物理作業系統檔案或磁碟(disk)的集合。使用oracle 10g的自動儲存管理(automatic storage management,asm)或raw分割槽時,資料庫可能不作為作業系統中單獨的檔案,但定義仍然不變。

q例項(instance):一組oracle後台程序/執行緒以及乙個共享記憶體區,這些記憶體由同乙個計算機上執行的執行緒/程序所共享。這裡可以維護易失的、非永續性內容(有些可以重新整理輸出到磁碟)。就算沒有磁碟儲存,資料庫例項也能存在。也許例項不能算是世界上最有用的事物,不過你完全可以把它想成是最有用的事物,這有助於對例項和資料庫劃清界線。

這兩個詞有時可互換使用,不過二者的概念完全不同。例項和資料庫之間的關係是:資料庫可以由多個例項裝載和開啟,而例項可以在任何時間點裝載和開啟乙個資料庫。實際上,準確地講,例項在其整個生存期中最多能裝載和開啟乙個資料庫!稍後就會介紹這樣的乙個例子。

乙個例項在其生存期中最多只能裝載和開啟乙個資料庫。要想再開啟這個(或其他)資料庫,必須先丟棄這個例項,並建立乙個新的例項。

重申一遍:

例項是一組後台程序和共享記憶體。

資料庫是磁碟上儲存的資料集合。

例項「一生」只能裝載並開啟乙個資料庫。

資料庫可以由乙個或多個例項(使用rac)裝載和開啟。

前面提到過,大多數情況下,例項和資料庫之間存在一種一對一的關係。可能正因如此,才導致人們很容易將二者混淆。從大多數人的經驗看來,資料庫就是例項,例項就是資料庫。

不過,在許多測試環境中,情況並非如此。在我的磁碟上,可以有5個不同的資料庫。測試主機上任意時間點只會執行乙個oracle例項,但是它訪問的資料庫每天都可能不同(甚至每小時都不同),這取決於我的需求。只需有不同的配置檔案,我就能裝載並開啟其中任意乙個資料庫。在這種情況下,任何時刻我都只有乙個「例項」,但有多個資料庫,在任意時間點上只能訪問其中的乙個資料庫。

所以,你現在應該知道,如果有人談到例項,他指的就是oracle的程序和記憶體。提到資料庫時,則是說儲存資料的物理檔案。可以從多個例項訪問乙個資料庫,但是乙個例項一次只能訪問乙個資料庫。

1.oracle資料庫系統中,dbms可以管理多個資料庫例項嗎?還是需要乙個oracle服務管理乙個例項?

oracle裡面乙個資料庫系統可以又多個例項。你可以執行dbca,在介面裡面你可以看到可以建立新的例項,但是大多數情況下,oracle都只是建立乙個例項。

2需要建立教務資料庫,財務資料庫兩個db,

是可以的,不過通常的做法是建再2個使用者放在不同的tablespaces上面。乙個使用者儲存教務資料庫表資料,乙個存放財務資料庫表資料。

oracle中的schema屬於哪個層次?

schema簡單來講,你可以理解成乙個使用者以及使用者所擁有的所有物件。其實就相當於sqlserver的庫啦。

4.oracle中這樣做。

create user test;

grant [connect,……]to test;

create table……

建立屬於此使用者的表及其他物件,那麼這個使用者數否可以代表為乙個應用db?

同3一樣,你可以這樣理解成乙個使用者以及使用者下面所有的物件其實就是sqlserver中的db了,實際生產環境中,為了減少成本喝充分利用oracle資料庫的資源,我們都是乙個專案乙個使用者,乙個應用乙個使用者,然後在不同的使用者下面建立相應的表、檢視、儲存過程、儲存函式、序列等等。

資料庫與例項

inventory oracle安裝工具oui用來管理oracle安裝目錄的 oracle的引數檔案,啟動後按照下面的順序讀取引數檔案,如果讀取失敗,啟動資料庫 失敗 1 oracle home dbs spfile.ora 2 oracle home dbs spfile.ora 3 oracle...

資料庫與資料庫例項的區別

資料庫與資料庫例項的區別 一 資料庫 資料庫 database 是乙個資料集合.無論資料庫是採用關係結構還是物件導向結構,oracle資料庫都將 其資料存放在資料檔案中.在其內部,資料庫結構資料對檔案的邏輯 對映,使不同的資料分開儲存,這些邏輯劃分稱為表空間.表空間和檔案介紹 1 表空間 表空間 t...

資料庫例項

連線資料庫時看到機器伺服器名 資料庫例項名,那麼什麼是資料庫例項呢?乙個sql server伺服器就是乙個例項,2000支援在同乙個作業系統裝多個伺服器,換言之,就是多個例項。多個 sql server 例項 microsoft sql server 2000 支援在同一臺計算機上同時執行多個 sq...