Innovating today, leading tomorrow

Tibero - 설치
[Tibero] Single DB 운용 (3)

[Tibero] Single DB 운용 (3)

Tibero Single DB 운용에 관한 필수구성 File을 안내합니다.

3. Tibero 필수 구성 File

3.1. Redo Log File

데이터의 모든 변경 사항을 기록하며 Media Failure 시 복구 방식을 제공합니다.                          

최소 2개 이상의 Group으로 구성(Mirroring)되어 있습니다.

3.1.1. Redo Log File 확인

SQL> select * from v$logfile;

GROUP# STATUS TYPE MEMBER
--------------- ------------ ---------- ------------------------------
0 ONLINE /tibero/tbdata/redo_1/log001.log
1 ONLINE /tibero/tbdata/redo_1/log011.log
2 ONLINE /tibero/tbdata/redo_1/log021.log


⇒ 현재 3개의 그룹에 Log File이1개씩(1 Member) 존재하며 Online 상태입니다.



SQL> select group#, members, archived, status from v$log;

GROUP# MEMBERS ARCHIVED STATUS
---------------- --------------- ---------------- --------
    0 1   YES INACTIVE
    1 1    YES INACTIVE
    2 1   NO CURRENT


⇒ 현재 2번 그룹의 Log File에 기록되는 것을 확인할 수 있습니다.
CURRENT log file 이 꽉 찼거나, 수동으로 Log Switch를 발생시키면 다음 순번의 Log File이 CURRENT가 되면서,
 redo log가 기록됩니다.

3.1.2. Redo log File 추가 / 이중화(Mirroring)

SQL> select * from v$logfile;

GROUP# STATUS TYPE MEMBER
----------------- -------------- ----------- -----------------------------------
0 ONLINE /tibero/tbdata/redo_1/log001.log
1 ONLINE /tibero/tbdata/redo_1/log011.log
2 ONLINE /tibero/tbdata/redo_1/log021.log


⇒ 현재 Redo Log File의 구성상태를 확인합니다.



SQL> alter database add logfile member '/tibero/tbdata/redo_2/log002.log' to group 0;
SQL> alter database add logfile member '/tibero/tbdata/redo_2/log012.log' to group 1;


⇒ Redo log File 을 이중화(mirroring) 하기위해 각 Group 에 Log file Member를 추가합니다.
⇒ 현재 2번 그룹이 CURRENT 상태이므로, 우선 INACTIVE 상태인 0,1번 그룹 MEMBER를 추가합니다.



SQL> select * from v$logfile;

GROUP# STATUS TYPE MEMBER
---------------- ---------------- ----------- -----------------------------------
0 ONLINE /tibero/tbdata/redo_1/log001.log
0 ONLINE /tibero/tbdata/redo_2/log002.log
1 ONLINE /tibero/tbdata/redo_1/log011.log
1 ONLINE /tibero/tbdata/redo_2/log012.log
2 ONLINE /tibero/tbdata/redo_1/log021.log


⇒ 0번, 1번 그룹에 Member가 추가된 것을 확인할 수 있습니다.
⇒ 2번 그룹의 경우, CURRENT 상태이므로 Member 추가 작업을 할 수 없습니다.



SQL> alter system switch logfile;
SQL> select group#, members, archived, status from v$log;

GROUP#
   MEMBERS ARCHIVED STATUS
----------------- ------------------ ----------------- -------------
    0 2      NO CURRENT
    1 2       YES INACTIVE
    2 1      YES INACTIVE

⇒ 2번 그룹이 INACTIVE 상태가 되도록 수동으로 switch를 실행합니다.



SQL> alter database add logfile member '/tibero/tbdata/redo_2/log022.log' to group 2;
SQL> select * from v$logfile;

GROUP# STATUS TYPE MEMBER
----------------- ------------ ----------- -----------------------------------
0 ONLINE /tibero/tbdata/redo_1/log001.log
0 ONLINE /tibero/tbdata/redo_2/log002.log
1 ONLINE /tibero/tbdata/redo_1/log011.log
1 ONLINE /tibero/tbdata/redo_2/log012.log
2 ONLINE /tibero/tbdata/redo_1/log021.log
2 ONLINE /tibero/tbdata/redo_2/log022.log


⇒ 2번 그룹에 Member를 추가해 모든 그룹이 2개의 member로 구성된 것을 확인할 수 있습니다.

Note!

Redo log File을 일반 log File로 착각해 삭제 또는 Null copy하는 경우가 자주 발생하므로 Redo log File은 주의깊은 관리가 필요합니다.

3.2. Control File

Database 무결성 유지를 위한 필수 File로, Datafile의 위치와 물리적 Database의 현 상태 등을 기록합니다.             Database mount, open 단계에서 필요하며 손실된 경우 데이터베이스 전체가 사용 불가능한 상태가 되므로 복구해야 합니다.

3.2.1. Control File 확인

SQL> select * from v$controlfile;

STATUS NAME       BLKSIZE BLOCKS
--------------- --------------------------------------- ---------- ----------
  0 /tibero/tbdata/cont_1/c1.ctl  16384 4645
  0 /tibero/tbdata/cont_2/c2.ctl   16384 4645



⇒ 손실될 경우를 대비해 2중으로 Control File을 생성, 유지하고 있습니다.
안정성을 높이기 위해 파일의 저장 위치를 다르게 지정해 생성하는 것을 권장합니다.

3.2.2. Control File 백업

Control File은 Database 운용에 매우 중요한 파일이므로 주기적으로 백업 받는 것을 권장합니다.

SQL> alter database backup controlfile to trace as '/tibero/tbdata/_BACKUP/control.sql';
Database altered.


⇒ 위 명령을 실행하면 ‘to trace as’ 다음의 경로에 control file 생성 쿼리가 포함된 텍스트 파일로 백업을 받습니다.
  차후에 control file이 손상 또는 삭제 시 백업 파일을 이용해서 복구 할 수 있습니다.



$ ls -l /tibero/tbdata/_BACKUP
total 8
-rw-r--r-- 1 tibero dba 4124 Mar 27 05:35 control.sql


⇒ OS상의 해당 경로에서 ls 명령어로 조회하면 백업된 File을 확인 할 수 있습니다.

3.3. Datafile

실제 Data가 저장되는 물리적 저장공간으로, 하나의 Tablespace(논리적 저장 영역 단위)안에 여러개의 Datafile이 존재할 수 있습니다.

3.3.1. Datafile 확인

SQL> select tablespace_name, file_name, bytes/1024/1024 from dba_data_files;

TABLESPACE_NAME FILE_NAME     BYTES/1024/1024
-------------------------- ------------------------------------------------- ---------------------
SYSTEM    /tibero/tbdata/data/system001.dtf     110
UNDO   
/tibero/tbdata/data/undo001.dtf      200
USR     /tibero/tbdata/data/usr001.dtf      100
SYSSUB  
/tibero/tbdata/data/syssub001.dtf     20
TEST01     /tibero/tbdata/data/test01001.dtf     100
TEST02   /tibero/tbdata/data/test02001.dtf      100

6 rows selected.



⇒ 위의 명령으로 조회해 Tablespace_name과 Tablespace에 속해있는 File Name, File의
Size을 확인할 수 있습니다. BYTES/1024/1024’ 는 File의 사이즈를 Mbyte로 조정해서 출력합니다.



SQL> select file#, name, status from v$datafile;

FILE#    NAME        
  STATUS
-------------- ----------------------------------------------- -------------------
   0 /tibero/tbdata/data/system001.dtf     ONLINE
  1 /tibero/tbdata/data/undo001.dtf     ONLINE
   2 /tibero/tbdata/data/usr001.dtf     ONLINE
  3 /tibero/tbdata/data/syssub001.dtf     ONLINE
  4 /tibero/tbdata/data/test01001.dtf     ONLINE
  5 /tibero/tbdata/data/test02001.dtf     ONLINE

6 rows selected.



⇒ 위의 명령으로도 Database에 존재하는 Datafile의 목록을 검색할 수 있습니다.

Note!

이상의 redo log file, control file, datafile 은 Tibero 운영에 관련된 필수 File이므로 반드시 주기적인 백업과 관리가 필요합니다.

광고성 정보 수신

개인정보 수집, 활용 목적 및 기간

(주)티맥스티베로의 개인정보 수집 및 이용 목적은 다음과 같습니다.
내용을 자세히 읽어보신 후 동의 여부를 결정해 주시기 바랍니다.

  • 수집 목적: 티맥스티베로 뉴스레터 발송 및 고객 관리
  • 수집 항목: 성함, 회사명, 회사 이메일, 연락처, 부서명, 직급, 산업, 담당업무, 관계사 여부, 방문 경로
  • 보유 및 이용 기간: 동의 철회 시까지

※ 위 개인정보 수집 및 이용에 대한 동의를 거부할 권리가 있습니다.
※ 필수 수집 항목에 대한 동의를 거부하는 경우 뉴스레터 구독이 제한될 수 있습니다.

개인정보의 처리 위탁 정보
  • 업체명: 스티비 주식회사
  • 위탁 업무 목적 및 범위: 광고가 포함된 뉴스레터 발송 및 수신자 관리
 

개인정보 수집 및 이용

개인정보 수집, 활용 목적 및 기간

(주)티맥스티베로의 개인정보 수집 및 이용 목적은 다음과 같습니다. 내용을 자세히 읽어보신 후 동의 여부를 결정해 주시기 바랍니다.

  • 수집 목적: 티맥스티베로 뉴스레터 발송 및 고객 관리
  • 수집 항목: 성함, 회사명, 회사 이메일, 연락처, 부서명, 직급, 산업, 담당업무, 관계사 여부, 방문 경로
  • 보유 및 이용 기간: 동의 철회 시까지

※ 위 개인정보 수집 및 이용에 대한 동의를 거부할 권리가 있습니다.
※ 필수 수집 항목에 대한 동의를 거부하는 경우 뉴스레터 구독이 제한될 수 있습니다.

개인정보의 처리 위탁 정보

  • 업체명: 스티비 주식회사
  • 위탁 업무 목적 및 범위: 광고가 포함된 뉴스레터 발송 및 수신자 관리
  •