Oracle 70일차

[디스크 증설 작업]

기존에 사용 중인 ASM 디스크 그룹의 사이즈가 부족한 경우 새로운 디스크를 생성하여 기존 디스크 그룹에 디스크를 할당

1. 용량 확인

select GROUP_NUMBER, NAME, TOTAL_MB, FREE_MB
from v$ASM_DISKGROUP;

2. 새로운 디스크 추가

--step1) 양쪽 서버 shutdown
서버 선택 후 edir virtual machine settings
> add
> HARD DISK
> virtual disk type NVMe 선택
> create a new virtual disk 선택
> 5G
> allocate all disk space now
> store virtual disk as a single file 선택
> disk file 위치를 D:\rac19db\storage 폴더 밑에 넣기


--step2) oel8db1 파일의 vmx 파일 확인
vmx 파일 밑 추가된 두줄 확인
nvme0:2.fileName = "D:\rac19db\storage\disk5.vmdk"
nvme0:2.present = "TRUE"

--step3) oel8db2 서버의 vmx 파일에다 복사 후 저장
--step4) oel8db1 기동
--step5) fdisk -l 확인

3. 물리, 논리 볼륨 생성 (root 계정)

# pvcreate /dev/nvme0n3
# vgcreate 19c3 /dev/nvme0n3
# lvcreate -L 4G -n DATA3 19c3

# ls -l /dev/19c3/DATA3
--lrwxrwxrwx 1 root root 7 Jan 17 14:52 /dev/19c3/DATA3 -> ../dm-7

4. ASM이 무는 디스크 생성 (root)

# oracleasm createdisk DATA03 /dev/19c3/DATA3
# oracleasm scandisks
# oracleasm listdisks
DATA01
DATA02
DATA03
OCR_VOTE1
OCR_VOTE2
OCR_VOTE3

5. asmca로 공유 디스크 설정

1) xming 실행
2) putty 실행(xming환경/oracle접속)
2) asmca 실행
- disk group 선택 후
- create
- disk group 이름 : DATA2
- redundancy : external
- ok

6. 2번 서버 기동

7. 디스크 확인

select b.name, a.label, a.total_mb, a.free_mb
  from v$asm_disk a,
       v$asm_diskgroup b
 where a.group_number = b.group_number
 order by 1,2;

[디스크 삭제]

1. 디스크 삭제 전 확인

select name from v$controlfile;
----
NAME
------------------------------------
+DATA2/ORADB/CONTROLFILE/current.257
+DATA2/ORADB/CONTROLFILE/current.258
----
select name from v$datafile;
----
NAME
------------------------------------
+DATA2/ORADB/DATAFILE/system.260
+DATA2/ORADB/DATAFILE/sysaux.261
+DATA2/ORADB/DATAFILE/undotbs1.262
+DATA2/ORADB/DATAFILE/undotbs2.264
+DATA2/ORADB/DATAFILE/users.265
----
select member from v$logfile;
----
MEMBER
-----------------------------------
+DATA2/ORADB/ONLINELOG/group_4.279
+DATA2/ORADB/ONLINELOG/group_1.276
+DATA2/ORADB/ONLINELOG/group_3.278
+DATA2/ORADB/ONLINELOG/group_2.277
----
select name from v$tempfile;
----
NAME
---------------------------------
+DATA2/ORADB/TEMPFILE/temp01.dbf
----
SQL> show parameter pfile
----
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      +DATA2/ORADB/PARAMETERFILE/spf
----                                                 ile

2. asm instance 접속 (양쪽 노드)

1번 노드)
> exit
$ export ORACLE_SID=+ASM1
$ export ORACLE_HOME=$GRID_HOME
$ sqlplus / as sysasm
SQL> alter diskgroup data dismount;

2번노드)
$ export ORACLE_SID=+ASM2
$ export ORACLE_HOME=$GRID_HOME
$ sqlplus / as sysasm
SQL> alter diskgroup data dismount;

3. 디스크 삭제

SQL> drop diskgroup DATA force including contents;
----
Diskgroup dropped.
----
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       oel8db1                  STABLE
      2        ONLINE  ONLINE       oel8db2                  STABLE
      3        ONLINE  OFFLINE                               STABLE
ora.DATA2.dg(ora.asmgroup)
      1        ONLINE  ONLINE       oel8db1                  STABLE
      2        ONLINE  ONLINE       oel8db2                  STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       oel8db1                  STABLE
ora.OCR_VOTE.dg(ora.asmgroup)
      1        ONLINE  ONLINE       oel8db1                  STABLE
      2        ONLINE  ONLINE       oel8db2                  STABLE
      3        OFFLINE OFFLINE                               STABLE

4. 디스크 확인

select b.name, a.label, a.total_mb, a.free_mb
  from v$asm_disk a,
       v$asm_diskgroup b
 where a.group_number = b.group_number
 order by 1,2;

Leave a Comment