新聞中心
ASM:Automatic Storage Management是Oracle 極力推薦的一種面向Oracle數(shù)據(jù)庫(kù)的存儲(chǔ)的實(shí)際解決方案, Oracle ASM 與RDBMS 是十分相似的,Oracle ASM 也是由文件與實(shí)例組成, 也可以通過(guò)sqlplus 工具來(lái)維護(hù)。

ASM 實(shí)例的創(chuàng)建和刪除也可以用DBCA 這個(gè)命令來(lái)操作。在dbca 的***個(gè)界面選擇配置自動(dòng)存儲(chǔ)管理就可以了。 ASM 實(shí)例需要CSS 進(jìn)程, 如果是非RAC 環(huán)境, 在啟動(dòng)ASM 實(shí)例之前會(huì)提示用腳本
$ORACLE_HOME/bin/localconfig add 啟動(dòng)CSS。
1. Oracle ASM 實(shí)例由SGA 和后臺(tái)進(jìn)程組成。
1. SGA 組成:
ASM 實(shí)例的SGA包括Buffer Cache, Share Pool, Large Pool等。 需要注意的是Share Pool, 因?yàn)镋xtent Map 要放在這部分的內(nèi)存中,需要更具數(shù)據(jù)量來(lái)估計(jì)Extent Map 的大小做相應(yīng)的調(diào)整。
Extent Map 的大小可以根據(jù)所有文件大小的和來(lái)估算,使用下面的語(yǔ)句來(lái)計(jì)算所有文件和:
- Select sum(bytes)/(1024*1024*1024) from v$datafile;
- Select sum(bytes)/(1024*1024*1024) from v$logfile a, v$log b where a.Group#=b.Group#;
- Select sum(bytes)/(1024*1024*1024) from v$tempfile where status='online';
這3個(gè)sum 的總和對(duì)應(yīng)著數(shù)據(jù)庫(kù)存放Oracle ASM中所有文件大小總和, 對(duì)于使用External Redundancy 的磁盤(pán)組, 每100G 需要1MB 的Extent Map, 根據(jù)這個(gè)比例計(jì)算Extent Map 所需要的空間,在加上額外的2MB就可以了。 在實(shí)際工作中一般不需要考慮ASM SGA的配置, 使用Oracle 提供的缺省值就可以了。
1.2 后臺(tái)進(jìn)程
ASM 實(shí)例比RDBMS 實(shí)例多2個(gè)進(jìn)程: RBAL 和 ABRn。
RBAL: 這個(gè)進(jìn)程也叫Rebalancer進(jìn)程, 負(fù)責(zé)規(guī)劃ASM 磁盤(pán)組的Reblance活動(dòng)。
ABRn:是RBAL進(jìn)程的子進(jìn)程,這個(gè)進(jìn)程在數(shù)量上可以有多個(gè), n從1~9, 這組進(jìn)程負(fù)責(zé)真正完成Reblance活動(dòng)。
使用ASM 作為存儲(chǔ)的RDBMS 實(shí)例也會(huì)多出2個(gè)進(jìn)程: RBAL 和 ASMB
RBAL: 這個(gè)進(jìn)程的主要功能是打開(kāi)每個(gè)磁盤(pán)的所有磁盤(pán)和數(shù)據(jù)的Rebalance。
ASMB: 這個(gè)進(jìn)程作為ASM 實(shí)例和數(shù)據(jù)庫(kù)實(shí)例之間的信息通道。 這個(gè)進(jìn)程負(fù)責(zé)與ASM 實(shí)例的通信, 它先利用Diskgroup Name 從CSS 獲得管理該Diskgroup 的ASM 實(shí)例的連接串, 然后建立到ASM 的持久連接, 兩個(gè)實(shí)例之間通過(guò)這條連接定期交換信息,同時(shí)也是一種心跳機(jī)制。
RDBMS 實(shí)例要想使用ASM 作為存儲(chǔ), RDBMS 實(shí)例必須在啟動(dòng)時(shí)從Oracle ASM 實(shí)例獲得Extent Map, 以后發(fā)生磁盤(pán)組的維護(hù)操作, ASM 實(shí)例還要把Extent Map的更新信息通知給RDBMS 實(shí)例, 這2個(gè)實(shí)例間的信息交換就是他你哦剛過(guò)ASMB 進(jìn)程完成的。 這也就為什么: ASM 實(shí)例必須要先于數(shù)據(jù)庫(kù)實(shí)例啟動(dòng),和數(shù)據(jù)庫(kù)實(shí)例同步運(yùn)行,遲于數(shù)據(jù)庫(kù)實(shí)例關(guān)閉。
注意: ASM 實(shí)例和數(shù)據(jù)庫(kù)實(shí)例的關(guān)系可以是1:1, 也可以是1:n。如果是1:n, ***為ASM 安裝單獨(dú)的ASM_HOME。
2. ASM 配置
ASM 可以使用裸設(shè)備 或者ASMLib 方式, 因?yàn)槁阍O(shè)別的維護(hù)比較復(fù)雜,在此只講解ASMLib 方式。
對(duì)應(yīng)不同的操作系統(tǒng), 需要不同的包,下載的時(shí)候一定要和操作系統(tǒng)內(nèi)核一致。 我的操作系統(tǒng)是 Red hat 4 update 7. 內(nèi)核版本是2.6.9-78.ELSMP。
- oracleasmlib-2.0.4-1.el4.i386.rpm
- oracleasm-support-2.1.3-1.el4.i386.rpm
- oracleasm-2.6.9-78.EL-2.0.5-1.el4.i686.rpm
- linux/asmlib/index.html"
該頁(yè)面有下載地址,注意選擇CPU 類(lèi)型。 Oracle asmlib 和 support,在同一個(gè)頁(yè)面下載。
安裝包:
- #rpm -ivh *.rpm
安裝完之后進(jìn)行配置:
- #/etc/init.d/oracleasm configure
會(huì)有相應(yīng)的提示, 回答 oracle , dba, y, y 就可以了
分別對(duì)應(yīng)默認(rèn)用戶, 默認(rèn)組,隨系統(tǒng)自啟動(dòng), 啟動(dòng)時(shí)設(shè)置權(quán)限。
- /etc/init.d/oracleasm createdisk VOL1 /dev/sdc1
- /etc/init.d/oracleasm scandisks
- /etc/init.d/oracleasm listdisks
關(guān)于oracleasm 的更多用法參考help:
- [root@node1 ~]# /etc/init.d/oracleasm --help
- Usage: /etc/init.d/oracleasm {start|stop|restart|enable|disable|configure
- |createdisk|deletedisk|querydisk|listdisks|scandisks|status}
上述的相關(guān)內(nèi)容就是對(duì)Oracle ASM詳解,希望會(huì)給你帶來(lái)一些幫助在此方面。
【編輯推薦】
- Oracle數(shù)據(jù)庫(kù)的類(lèi)型LONG功能的介紹
- Oracle查詢優(yōu)化4大方面的主要途徑
- Oracle存取LONG類(lèi)型字段的方案描述
- Oracle并發(fā)連接數(shù)的設(shè)置方案
- OracleSQL調(diào)優(yōu)的作用是什么?
網(wǎng)站欄目:對(duì)Oracle ASM詳細(xì)解剖
文章路徑:http://www.5511xx.com/article/ccdpjdi.html


咨詢
建站咨詢
