Instance[系統進程]

Instance[系統進程]
更多義項 ▼ 收起列表 ▲

Instance是作業系統中一系列的進程以及為這些進程所分配的記憶體塊。

詞語解釋

實例:類實例化以後成為一個對象。

說明,體現 His meaning is well ~d in the passage quoted.他的意思在引文中有充分的說明。

短語:for ~ 例如

in the first instance 首先,第一步

關係

symbol 是 master copy, 好比說是父親,instances 是舞台上的精靈,好比是兒子,兒子像父親,但不是父親,所以有繼承性,也有獨特性。這個特性不僅適用於visual的屬性,例如顏色,ALPHA, 大小等。也適用於 instance 本身的behavior。也許這么說你有些糊塗,比方說,你建立了一個 graphic symbol,drag it to the stage。這時候你如果點選這個 instance, 在 instance panel 里你會發現顯示為 graphic behavior。你可以改變它為 button,或者 movieClip,這隻對當前所選的instance 有效,不會影響到 library 里的 symbol 本身,也不會影響到其他的由同一個symbol 產生的 instances.

資料庫中實例

和資料庫區別

什麼是資料庫,其實很簡單,資料庫就是存儲數據的一種媒介。比如常用的檔案就是一種,在Oracle10G中,數據的存儲有好幾種。第一種是檔案形式,也就是在你的磁碟中創建一批檔案,然後在這些檔案中存儲信息。第二種就是磁碟陣列形式,這個是什麼意思呢,這個就是說明資料庫不是存放為某個檔案,而是把一個或者多個磁碟格式化成Oracle的一種格式了,等於整個磁碟就是存放Oracle資料庫的,不能作為別的用途。這樣的優點是存儲性能高,因為不再藉助別的檔案格式了,而是把整個磁碟都成為Oracle最適應的檔案系統格式。當然還可能有別的形式,比如網路什麼的。不過我們最常用的還是檔案格式的,在檔案格式中,資料庫指的就是那些數據檔案,控制檔案以及REDO檔案等等一系列檔案。  而什麼是Instance呢,Instance其實就是指的作業系統中一系列的進程以及為這些進程所分配的記憶體塊。在Oracle中,我們可以新建一個Oracle的Instance,這個時候雖然有了進程還有SGA等一系列的記憶體塊,但是這個時候並沒有把資料庫檔案讀取進來。所以只是一個實例,在後來,你可以通過命令手動或者自動地把資料庫檔案載入進我們的資料庫Instance中,這個時候的資料庫才可以讓我們真正的開始訪問操作。

所以說,資料庫的套用如果想實現,資料庫和資料庫Instance是缺一不可的,如果只有資料庫的那些檔案,那么,只能代表數據在這個檔案中,但是我們無法直接進行操作。而如果只有資料庫Instance,那么我們雖然可以急性操作,但是也不知道操作哪些數據,操作生成的數據也無法保存等等。所以,當一個Oracle Instance真正Load了一個Oracle Database了以後,資料庫才可以被我們使用。

在這裡要注意一點的是,Oracle的實例在啟動以後,只能load一次資料庫,如果想把資料庫與Instance斷開,然後再重新掛在一個資料庫Instance,那么就需要你首先把資料庫Instance進程結束,然後重新建立這個instance的一個進程,再load另外一個資料庫。否則肯定要拋除ORA-16169錯誤,說資料庫已經被打開。因為一個資料庫Instance在其生存期中最多只能load和打開一個instance。

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後台進程/執行緒以及一個共享記憶體區,這些記憶體由同一個計算機上運行的執行緒/進程所共享。這裡可以維護易失的、非持久性內容(有些可以刷新輸出到磁碟)。就算沒有磁碟存儲,資料庫實例也能存在。也許實例不能算是世界上最有用的事物,不過你完全可以把它想成是最有用的事物,這有助於對實例和資料庫劃清界線。

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

是不是更糊塗了?我們還會做進一步的解釋,應該能幫助你搞清楚這些概念。實例就是一組作業系統進程(或者是一個多執行緒的進程)以及一些記憶體。這些進程可以運算元據庫;而資料庫只是一個檔案集合(包括數據檔案、臨時檔案、重做日誌檔案和控制檔案)。在任何時刻,一個實例只能有一組相關的檔案(與一個資料庫關聯)。大多數情況下,反過來也成立:一個資料庫上只有一個實例對其進行操作。不過,Oracle的真正套用集群(Real Application Clusters,RAC)是一個例外,這是Oracle提供的一個選項,允許在集群環境中的多台計算機上操作,這樣就可以有多台實例同時裝載並打開一個資料庫(位於一組共享物理磁碟上)。由此,我們可以同時從多台不同的計算機訪問這個資料庫。Oracle RAC能支持高度可用的系統,可用於構建可擴縮性極好的解決方案。

相關詞條

相關搜尋

熱門詞條

聯絡我們