oracle管理之ASM

OracleASM管理

Autostoragemanagement自動存儲管理,它是oracle10g的新增功能,它將日益複雜的存儲管理變得簡單。它使的添加刪除磁盤變得簡單,並且動態調整i/o,通過設置故障組可以更好的保護數據安全。

ASM體系結構,它是通過一個ASM實例來管理磁盤組。

安裝ASMlib

首先到官網下載ASMlib所需軟件

http://www.oracle.com/technetwork/server-storage/linux/downloads/rhel5-084877.html

支持和庫文件可以直接下載,內核文件,可以uname-a然後下載

174019320.pnglrpm-Uvhoracleasm-support-2.1.8-1.el5.i386.rpm

rpm-Uvhoracleasm-2.6.18-164.el5xen-2.0.5-1.el5.i686.rpm

Rpm-Uvhoracleasmlib-2.0.4-1.el5.i386.rpm

配置asm服務

安裝完畢開始配置asm服務,這裏先創建好所需用戶oracle和組dba

[root@localhost~]#/etc/init.d/oracleasmconfigure

ConfiguringtheOracleASMlibrarydriver.

Thiswillconfiguretheon-bootpropertiesoftheOracleASMlibrary

driver.Thefollowingquestionswilldeterminewhetherthedriveris

loadedonbootandwhatpermissionsitwillhave.Thecurrentvalues

willbeshowninbrackets('[]').Hitting<ENTER>withouttypingan

answerwillkeepthatcurrentvalue.Ctrl-Cwillabort.

Defaultusertoownthedriverinterface[]:oracle

Defaultgrouptoownthedriverinterface[]:dba

StartOracleASMlibrarydriveronboot(y/n)[n]:y

ScanforOracleASMdisksonboot(y/n)[y]:y

WritingOracleASMlibrarydriverconfiguration:done

InitializingtheOracleASMLibdriver:[OK]

[root@localhost~]#/etc/init.d/oracleasmdisable卸載

[root@localhost~]#/etc/init.d/oracleasmenable加載

配置ASM磁盤

先分別創建新分區,然後創建asm磁盤磁盤名稱大寫

Fdisk/dev/sdb

/etc/init.d/oracleasmcreatediskVOL1/dev/sdb1

/etc/init.d/oracleasmcreatediskVOL2/dev/sdc1

/etc/init.d/oracleasmcreatediskVOL3/dev/sdd1

/etc/init.d/oracleasmcreatediskVOL3/dev/sde1

/etc/init.d/oracleasmlistdisk列出磁盤

創建asm實例

ASM實例創建步驟:

1、創建初始化文件

#vi$ORACLE_HOME/dbs/init+ASM.ora參數文件添加7行語句

174037824.png

2、創建密碼文件

$orapwdfile=orapwd+ASMpassword=dba

3、創建目錄結構

$mkdir-p$ORACLE_HOME/+ASM/udump

$mkdir-p$ORACLE_HOME/+ASM/bdump

$mkdir-p$ORACLE_HOME/+ASM/cdump

4、啓動實例

$exportORACLE_SID=+ASM啓動實例

5、創建spfile文件,重新啓動

$sqlplus/assysdba

Sql>startup

Ora-15110:Nodiskgroupmounted.

Sql>createspfilefrompfile;

Sql>shutdownimmediate;

Sql>startup;

6.創建磁盤組

Sql>creatediskgroupdgroup1normalredundancy

failgroupfgroup1diskORCL:VOL1,ORCL:VOL2

failgroupfgroup2diskORCL:VOL3,ORCL:VOL4;

Diskgroupcreated.

Sql>selectname,statefromv$asm_diskgroup;

Namestate

------------------------------------------

DGROUP1MOUNTED

SQL>alterdiskgroupdgroup1mount;也可以手工掛載

數據庫使用磁盤組

按照正常步驟完成oracle數據的創建,然後通過dbca啓動創建數據庫實例,在存儲一項中選擇asm,然後選擇我們建立的磁盤組完成安裝完成即可。

174054289.png

啓動asm數據庫

啓動asm數據庫,必須先啓動asm實例,然後啓動數據庫實例

首先啓動ASM實例

exportORACLE_SID=+ASM

$sqlplus/assysdba

SQL>startup

ASMdiskgroupmounted;

Sql>exit

然後啓動數據

exportORACLE_SID=ipap

$sqlplus/assysdba

SQL>startup

Databasemounted;

Databaseopen;

ASM環境添加磁盤

Fdisk/dev/sdf創建新分區

/etc/init.d/oracleasmcreatediskVOL5/dev/sdf1

/etc/init.d/oracleasmcreatediskVOL6/dev/sdg1

exportORACLE_SID=+ASM

$sqlplus/assysdba

Sql>select*fromv$asm_disk;

6rowselected.

Sql>alterdiskgroupdgroup1add

failgroupfgroup1diskORCL:VOL5

failgroupfgroup2diskORCL:VOL6;

Diskgroupaltered.

sql>descv$asm_operation;

Sql>selectgroup_number,opera,stat,est_work,sofar,est_rate,est_minutesfromv$asm_operation;

刷新數據就不斷變化,最後發現沒有行被選擇,說明磁盤被分配完畢

174113700.png

查看磁盤大小,看到空間增大

174129446.png進行ASM環境的驗證

exportORACLE_SID=ipap

$sqlplus/assysdba

SQL>startup

Sql>createtablespacetestdatafile+DGROUP1size200M;

Sql>createuserasmuseridentifiedbypassworddefaulttablespacetest;

Sql>grantconnect,resourcetoasmuser;

Sql>connasmuser/password

Sql>createtablet(idint,namevachar2(23));

Tablecreated

ASM刪除磁盤

exportORACLE_SID=+ASM

$sqlplus/assysdba

Sql>alterdiskgroupdgroup1dropdiskVOL4;

Diskgroupaltered.

Sql>selectgroup_number,opera,stat,est_work,sofar,est_rate,est_minutesfromv$asm_operation;

174144444.png

Sql>alterdiskgroupdgroup1rebalance;

norowselected時,完成磁盤分配工作,也可以進行平衡。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章