Oracle/Admin2010. 1. 7. 16:02
ASM이란?
  : 이식성이 좋은 (어떤 종류의 하드웨어이든지 간에 잘 돌아가는) 고성능 클러스터 파일 시스템이다.
    10g new feature
    오라클 데이터베이스 파일들만 들어간다.
    mirroring기능도 있다.
    RAID와 RAW device의 개념이 내포


ASM을 사용하기 위한 조건
  1. ASM instance 구성 / 관리 
      - DBCA vs 수동
  2. ASM disk group
  3. ASM file  


ASM에만 있는 프로세스
  - RBAL(Rebalance) : 디스크 추가시 데이터를 이동시키는 백그라운드 프로세스
  - ARBn


ASM instance 초기화 파라미터

  - INSTANCE_TYPE = ASM
  - DB_UNIQUE_NAME = +ASM
  - ASM_POWER_LIMIT = 1
  - ASM_DISKSTRING = '/dev/rdsk/*s2', '/dev/rdsk/c1*'
  - ASM_DISKGROUPS = dgroupA, dgroupB
  - LARGE_POOL_SIZE = 8MB

  ※ 위 파라미터 중 생략하면 에러가 나는 파라미터는?
      instance_type : default값이 rdbms이기때문에...


ASM instance의 startup

OS] export ORACLE_SID='+ASM'
OS] sqlplus /nolog
SQL> connect / as sysdba
SQL> startup;

    sysdba 권한 : 모든 작업이 가능
    sysoper 권한 : 일부 작업에 제한을 받음(disk group 생성, disk를 추가는 안됨)

ASM instance의 shutdown
   : db instance가 살아있는 동안은 shutdown이 안됨.
     단, shutdown abort는 가능. -> 잠시후 db instance도 전부 shutdown 됨(비정상 종료)

ASM storage
   : AU(Allocation Unit) au단위로 공간이 쪼개짐 1M

ASM Disk Groups

SQL> CREATE DISKGROUP dg1 NORMAL REDUNDANCY
      FAILGROUP controller1 DISK
       '/devices/diska1',
       '/devices/diska2',
       '/devices/diska3',
       '/devices/diska4'
      FAILGROUP controller2 DISK
       '/devices/diskb1',
       '/devices/diskb2',
       '/devices/diskb3',
       '/devices/diskb4';

   failure 그룹 : 하나의 특정 디스크 그룹 내에서 failure를 허용해야 하는 공통 리소스를 공유하는 디스크 셋입니다

   chunk : 1M의 AU

   asm에서는 striping은 무조건 일어남.

Disk Group Mirroring 
  : au레벨에서 mirroring한다.
    각 디스크에서 primary au와 mirror au가 혼재함.
   - external : 하드웨어의 mirroring을 따름
   - normal redundancy : 2중 mirroring, 최소 둘 이상의 failure 그룹
   - high redundancy : 3중 mirroring, 최소 셋 이상의 failure그룹

   - disk group dynamic rebalancing


Disk Group Management

   - 디스크 그룹 생성 : create disk group
   - 디스크 그룹 삭제 : drop diskgroup 
   - 디스크 추가 : alter diskgroup
   - 디스크 그룹으로 부터 디스크 제거 : alter diskgroup dgroupA drop disk a5;


ASMCMD utility
   : asm 디스크 안에 있는 파일들을 볼 수 있게 하는 유틸리티(10g r2~)
     cd, ls, pwd의 os 명령이 가능하다.
     커맨드가 아래와 같이 나옴.
     ASMCMD>

데이터베이스를 저장영역으로 이전

OS] export ORACLE_SID=kaydb
OS] vi $ORACLE_HOME/dbs/initkaydb.ora
db_name       = kaydb
instance_name = kaydb
compatible    = 10.2.0
processes     = 100
undo_management = auto
undo_tablespace = undotbs01
db_cache_size    = 64m
shared_pool_size = 72m
db_block_size    = 4096
db_create_file_dest = '+dg1';
db_create_online_log_dest1 = '+dg1';
db_create_online_log_dest2 = '+dg2';
db_recovery_file_dest = '+dg2';
db_recovery_file_dest_size = 200G;
remote_login_passwordfile = exclusive
os] sqlplus / as sysdba
SQL> startup nomount
SQL> create database kaydb


참고 : 오라클 교재 - 10g ws2 12장


기타 참고사항

  RAID <-> SLED

  RAW device : 그냥 파티션 <-> File System(Cooked Device)

'Oracle > Admin' 카테고리의 다른 글

Security  (0) 2010.01.08
Resource Manager  (0) 2010.01.07
Managing Storage  (0) 2010.01.06
Managing Schema Objects  (0) 2009.12.30
Moving Data (SQL*Loader, Export/Import, Datapump)  (0) 2009.12.15
Posted by 자수성가한 부자