《oracle asm instance & add asm diskgroup》

摘要:《oracle asm instance & add asm diskgroup》

2009/7/1

自從將oracle 9i升級到oracle 10g後,為了後公司的專案,就一直想實作ASM及RAC,

因為對ASM的建立一直不是很了解,東湊西湊,看了許多google上的參考資料後,還是覺得oracle自家的文檔寫的最詳細,

原來ASM架構也是一個小型的oracle database instance,

用途就是管理ASM使用,所以要先建立ASM instance,這次是透過DBCA建立ASM instance,

下面就稍微描述一下從 File system migrate to ASM 的過程。

Virtual PC: windows xp

oracle版本: 10.0.2

磁碟: C 30G、2個空的磁碟掛載在 c:\asmdisk1、c:\asmdisk2 各 10G

首先先建立  Cluster Synchronization Services (CSS),

透過DBCA建立ASM儲存管理時,如果沒有先建立CSS,會出現下列提示。

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

為了使用「自動儲存體管理(ASM)」,必須設定和啟動「Oracle叢集同步化服務(CSS)」.

請從命令提示執行"c:\oracle\product\10.2.0\db_A\bin\localconfig add"命令檔以設定和啟動CSS.

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

按表操課

C:\Documents and Settings\Administrator>localconfig add

Step 1:  creating new OCR repository

Successfully accumulated necessary OCR keys.

Creating OCR keys for user 'administrator', privgrp ''..

Operation successful.

Step 2:  creating new CSS service

successfully created local CSS service

successfully added CSS to home

CSS 建立完成。

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

建立ASM Disk Group是我最頭痛,因為搞不懂raw device要怎麼建立,怎麼都搜尋不到磁碟。

經過了幾天的沉澱及資料搜尋,總算有點頭緒。

 

raw device 就是空的磁碟,尚未格式化,也不是所謂的檔案格式,如FAT32、NTFS。網路上沒有人在討論這玩意,大概是基本的常識,不過現在我大概

知道其輪廓了。

知道這點後,在windows上進行磁碟管理時,有三種選項,一個是掛載到某個磁碟代號下,

一個是掛載到NTSF的資料夾中,一個是不掛載。

這三種在嘗試的過程中,我都試過了;最後是將空白磁碟加在NTFS的資料夾下才搞定。

這次我分別將兩顆磁碟掛在c:\asmdisk1、c:\asmdisk2。

之後在新增disk group時,要記得變更搜尋磁碟的路徑。

  'c:\asmdisk1','c:\asmdisk2'

記得用comma分隔。

ASM instance 總共建立一個ASMGroup1,這個Disk group下共有兩個member。

接著透過oracle enterprise manager->管理->維護ASM

將原本的data file、control file、spfile......etc

migrate 到 ASM。

附註:

1.在試作的過程一直遇到錯誤,想將asm instance刪除重建卻又不知如何下手,好不容易找到的方法。

刪除 asm的instance service (oracleasmservice+asm)

oradim -delete -asmsid +asm

有經驗的看倌應該都知道,只是-sid 的參數改成了-asmsid。

2.上述的作法雖然透過了dbca、oem,不過手工製作的方法,我大概了然於心。

先建立 css、asm instance (c:\oradim -new -asmsid +ASM)

用orapwd建立asm使用的password、pfile (重點 instance_type=asm 一定要在這參數檔中),

透過create diskgroup、alter diskgroup ? add ,就可以建立如dbca所做的事。

如果要migrate到ASM,透過oracle 的文檔 http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/storeman.htm#BABJJJDF

運用rman backup 後再restore到ASM。

以上都是空想,有機會會實作,再將過程貼上來與大家分享,希望大家不吝指教。