文章詳情頁(yè)
Oracle中Instance實(shí)例和數(shù)據(jù)庫(kù)的區(qū)別
瀏覽:12日期:2023-11-17 12:03:30
在實(shí)際的開(kāi)發(fā)應(yīng)用中,關(guān)于Oracle數(shù)據(jù)庫(kù),經(jīng)常聽(tīng)見(jiàn)有人說(shuō)建立一個(gè)數(shù)據(jù)庫(kù),建立一個(gè)Instance,啟動(dòng)一個(gè)Instance之類(lèi)的話(huà)。 其實(shí)問(wèn)他們什么是數(shù)據(jù)庫(kù),什么是Instance,很可能他們給的答案就是數(shù)據(jù)庫(kù)就是Instance,Instance就是數(shù)據(jù)庫(kù)啊,沒(méi)有什么區(qū)別。在這里,只能說(shuō)雖然他們Oracle用了可能有了一定的經(jīng)驗(yàn),不過(guò)基礎(chǔ)的概念還是不太清楚。 什么是數(shù)據(jù)庫(kù),其實(shí)很簡(jiǎn)單,數(shù)據(jù)庫(kù)就是存儲(chǔ)數(shù)據(jù)的一種媒介。比如常用的文件就是一種,在Oracle10G中,數(shù)據(jù)的存儲(chǔ)有好幾種。第一種是文件形式,也就是在你的磁盤(pán)中創(chuàng)建一批文件,然后在這些文件中存儲(chǔ)信息。第二種就是磁盤(pán)陣列形式,這個(gè)是什么意思呢,這個(gè)就是說(shuō)明數(shù)據(jù)庫(kù)不是存放為某個(gè)文件,而是把一個(gè)或者多個(gè)磁盤(pán)格式化成Oracle的一種格式了,等于整個(gè)磁盤(pán)就是存放Oracle數(shù)據(jù)庫(kù)的,不能作為別的用途。這樣的優(yōu)點(diǎn)是存儲(chǔ)性能高,因?yàn)椴辉俳柚鷦e的文件格式了,而是把整個(gè)磁盤(pán)都成為Oracle最適應(yīng)的文件系統(tǒng)格式。當(dāng)然還可能有別的形式,比如網(wǎng)絡(luò)什么的。不過(guò)我們最常用的還是文件格式的,在文件格式中,數(shù)據(jù)庫(kù)指的就是那些數(shù)據(jù)文件,控制文件以及REDO文件等等一系列文件。 而什么是Instance呢,Instance其實(shí)就是指的操作系統(tǒng)中一系列的進(jìn)程以及為這些進(jìn)程所分配的內(nèi)存塊。在Oracle中,我們可以新建一個(gè)Oracle的Instance,這個(gè)時(shí)候雖然有了進(jìn)程還有SGA等一系列的內(nèi)存快,但是這個(gè)時(shí)候并沒(méi)有把數(shù)據(jù)庫(kù)文件讀取進(jìn)來(lái)。所以只是一個(gè)實(shí)例,在后來(lái),你可以通過(guò)命令手動(dòng)或者自動(dòng)地把數(shù)據(jù)庫(kù)文件加載進(jìn)我們的數(shù)據(jù)庫(kù)Instance中,這個(gè)時(shí)候的數(shù)據(jù)庫(kù)才可以讓我們真正的開(kāi)始訪(fǎng)問(wèn)操作。 所以說(shuō),數(shù)據(jù)庫(kù)的應(yīng)用假如想實(shí)現(xiàn),數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)Instance是缺一不可的,假如只有數(shù)據(jù)庫(kù)的那些文件,那么,只能代表數(shù)據(jù)在這個(gè)文件中,但是我們無(wú)法直接進(jìn)行操作。而假如只有數(shù)據(jù)庫(kù)Instance,那么我們雖然可以急性操作,但是也不知道操作哪些數(shù)據(jù),操作生成的數(shù)據(jù)也無(wú)法保存等等。所以,當(dāng)一個(gè)Oracle Instance真正Load了一個(gè)Oracle Database了以后,數(shù)據(jù)庫(kù)才可以被我們使用。 在這里要注重一點(diǎn)的是,Oracle的實(shí)例在啟動(dòng)以后,只能load一次數(shù)據(jù)庫(kù),假如想把數(shù)據(jù)庫(kù)與Instance斷開(kāi),然后再重新掛在一個(gè)數(shù)據(jù)庫(kù)Instance,那么就需要你首先把數(shù)據(jù)庫(kù)Instance進(jìn)程結(jié)束,然后重新建立這個(gè)instance的一個(gè)進(jìn)程,再load另外一個(gè)數(shù)據(jù)庫(kù)。否則肯定要拋除ORA-16169錯(cuò)誤,說(shuō)數(shù)據(jù)庫(kù)已經(jīng)被打開(kāi)。因?yàn)橐粋€(gè)數(shù)據(jù)庫(kù)Instance在其生存期中最多只能load和打開(kāi)一個(gè)instance。
標(biāo)簽:
Oracle
數(shù)據(jù)庫(kù)
排行榜

網(wǎng)公網(wǎng)安備