RAC 관련 명령어
Oracle/RAC

RAC 관리 Oracle/MSSQL 

 

1) 관리 툴 : EM, CVU(Cluster Verification Utility, RAC 설치 후 검증 툴), srvctl(server control)
      - crsctl(cluster ready services control) : oracle cw 기동/중지 툴
      - oifcfg(oracle interface configuration tool) : 네트워크 인터페이스 할당/해제 툴
      - ocrconfig(OCR configuration tool) : ocr 관리 툴, ocrcheck, ocrdump 등의 유틸리티도 있음
      - vipca : vip 관리


2) Voting Disk 관리
      - voting disk 백업 : $[oratest] dd if=voting_disk_name of=backup_file_name
      - voting disk 복구 : $[oratest] dd if=backup_file_name of=voting_disk_name


      - Multiple voting disk path 추가
        #[root] crsctl stop crs (모든 노드에서)
        #[root] crsctl add css votedisk path -force


      - Multiple voting disk path 삭제
        #[root] crsctl delete css votedisk path


3) OCR 관리
      - OCR location 추가 : #[root] ocrconfig -replace ocr destination_file or disk
      - OCR mirror location 추가 : #[root] ocrconfig -replace ocrmirror destination_file or disk


      - OCR 교체
        . 교체할 OCR 외에 나머지 OCR이 online 상태인지 확인
        . Oracle CW가 해당 노드에서 작동 중인지 확인
        . 다음의 명령어로 OCR 교체
          # ocrconfig -replace ocr [dst file] or [disk]
          # ocrconfig -replace ocrmirror [dst file] or [disk]


        . 교체 작업 중 shutdown 상태였던 node가 있었다면, 해당 노드 restart 시에 다음의 명령어로 repair 작업 수행
          # ocrconfig -repair ocr [device_name]
          # ocrconfig -repair ocrmirror [dev_name]


      - OCR 복구
        # ocrconfig -repair ocrmirror [dev_name]


      - OCR 삭제
        . 제거할 OCR 외에 나머지 OCR이 online 상태 인지 확인
        . 다음의 명령어로 OCR 삭제
          # ocrconfig -replace ocr
          # ocrconfig -replace ocrmirror


      - OCR 백업
        . Oracle이 자동으로 백업 생성/관리
        . 백업 디폴트 위치 : CRS_home/cdata/cluster_name


      - OCR 백업 확인
        # ocrconfig -showbackup


      - OCR 복구
        . OCR 백업 확인
          # ocrconfig -showbackup
          # ocrdump -backupfile [file_name]
        . 모든 노드에서 ORACLE CW 중지
          # crsctl stop crs
        . 복구
          # ocrconfig -restore [file_name]
        . 모든 노드에서 Oracle CW 시작
          # crsctl start crs


      - OCR 내용 확인
        . ocrdump 이용하여 ocr의 내용을 파일로 출력해서 확인


      - OCR 체크 : $ ocrcheck


4) DB와 인스턴스(서버) 관리
      - DB와 인스턴스(서버) 시동 : $ srvctl start instance -d [dbname] -i [inst_name_list]
      - DB와 인스턴스(서버) 중지 : $ srvctl stop instance -d [dbname] -i [inst_name_list]


      - 모든 인스턴스 시작 : $ srvctl start database -d [dbname]
      - 모든 인스턴스 중지 : $ srvctl stop database -d [dbname]


      - DB policy 변경
        . policy 종류 : Automatic(Default), manual
        . 현재 policy 확인 : # srvctl config database -d [dbname] -a
        . Policy 변경 : # srvctl modify database -d [dbname] -y [policy name]
        . Database 추가 및 Policy 설정 : # srvctl add database -d [dbname] -y [policy name]


      - SPFILE 변경
        . 현재 spfile 설정 확인 : # srvctl config database -d [dbname] -a
        . spfile 변경 : # srvctl modify database -d [dbname] -p [spfile위치]


      - RAC NIC 관리
        . NIC 정의 : $ oifcfg setif -global eth0/139.185.141.0:cluster_interconnect
        . NIC 확인 : $ oifcfg iflist
                     $ oifcfg getif
        . NIC 삭제 : $ oifcfg delif -global eht0/139.185.141.0


      - CSS failover 파라메터 설정
        . CSS 파라메터 : Misscount, Disktimeout, Reboottime
        . CSS 파라메터 설정 확인
          $ crsctl get css misscount
          $ crsctl get css disktimeout
          $ crsctl get css reboottime


        . CSS 파라메터 설정 변경
          # crsctl set css misscount [value]
          # crsctl set css disktimeout [value]
          # crsctl set css reboottime [value]


        . CRS 재시작
          # crsctl stop crs
          # crsctl start crs


      - OCR 파일내의 CRS 파라메터 변경
        . VIP 의 CHECK_INTERVAL 값 변경
          # crs_stat -p XXX.vip > XXX.vip.cap
          생성한 XXX.vip.cap 파일을 열어서, CHECK_INTERVAL 값 변경
          crs를 내렸다 올림
          # crs_register -u XXX.vip (.cap는 자동으로 인식하므로, 생략함)
          # crsctl stop crs
          # crsctl start crs


      - 로그 레벨 변경
        . 관련 로그 및 위치
          = CRS Log : $ORA_CRS_HOME/log/hostname/crsd
          = CSS Log : $ORA_CRS_HOME/log/hostname/cssd
          = OCR Log : $ORA_CRS_HOME/log/hostname/client
          = EVM Log : $ORA_CRS_HOME/log/hostname/evmd


        . CSS 로그 레벨 변경
          # crsctl set trace [level] (default 1)
          # crsctl stop crs
          # crsctl start crs


        . OCR 로그 레벨 변경
          $ORA_CRS_HOME/srvm/admin/ocrlog.ini 의 mesg_logging_level 값 조정 (default 0)

 

RAC 인스턴스 개수 확인 : select count(*) from gv$instance;

 

RAC STOP => 역시 관리의 기본은 STOP/START/상태 확인이다.... ^^
  1) 리스너 종료 : $ lsnrctl stop
  2) RAC 의 모든 인스턴스 shutdown : $ srvctl stop database -d [db sid]
  3) ORACLE CW 종료 : # crsctl stop crs (root)

 

RAC START
  1) ORACLE CW 시작 : # crsctl start crs (root)
  2) RAC 의 모든 인스턴스 start : $ srvctl start database -d [db sid]
  3) RAC 관련 서비스 시작(옵션, ex:TAF) : $ srvctl start service -d [db sid]
  4) 리스너 시작 : $ lsnrctl start

 

CRS 상태 확인 : crs_stat -t => 가독성이 떨어짐
                       crsstat     => 가독성이 좋음

 

RAC 내의 DB 목록 확인
  $ srvctl config database
  oracl

 

RAC DB의 설정 확인
  $ srvctl config database -d [sid]
  linux1 orcl1 /u01/app/oracle/product/10.2.0.1/db_1
  linux2 orcl2 /u01/app/oracle/product/10.2.0.1/db_1 

 

RAC 관련 서비스 확인
  $ srvctl config service -d [sid]
  oracltest PREF: oracl2 oracl1 AVAIL

 

RAC 인스턴스 상태 확인
  $ srvctl status database -d [sid]

 

RAC 프로세스 확인
  ps -ef | grep d.bin
  => HP는 3개 있으면 OK(crsd, evmd, css), oprocd는 SGeRAC가 수행함.
     IBM은 4개 있으면 OK(crsd, evmd, css, oprocd)
 
RAC 프로세스 상태 확인
  crsctl check crs

 

crs_stop all  => CRS 부터 인스턴스까지 등록된 모든 것을 중지함(비 권장)
crs_start all => CRS 부터 인스턴스까지 등록된 모든 것을 시작함(비 권장)

crsctl disable crs * => rebooting 후 crs가 자동 시작되는 것을 disable
crsctl enable crs*   => rebooting 후 crs가 자동 시작되는 것을 enable

 

플랫폼 별 RAC 구동 순서

  1) HP : MCSG(SGeRAC) -> CFS -> CRS -> 각 노드의 DB 인스턴스 구동
  2) IBM : GPFS mount -> CRS -> 각 노드의 DB 인스턴스 구동 

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

RAC) PRKC-1044 failed to check remote command execution setup for node 에러  (0) 2014.11.20
RAC 구성 Processe  (0) 2014.11.16
RAC 시작/종료 명령어  (0) 2014.11.16
RAC I/O시스템 설명  (0) 2014.11.15