Tibero Single DB 운용에 필요한 용량 관리를 안내합니다.
5. 용량 관리
5.1. File system 용량 확인
5.1.1. Tibero 엔진 File system 사용량 확인
Tibero가 설치된 File-system이나 Datafile, Archive Log File 등이 저장되는 File-system이 100% Full상태가 되면, 더 이상 데이터를 기록하지 못해 Database Hang 현상이 발생하거나, Data가 정상적으로 기록되지 못하게 되어 오류가 발생할 수 있습니다.
그러므로 관리자는 주기적으로 OS상에서 File-system 용량 확인이 필요합니다.
# df –k
Filesystem Size Used Avail Use% Mounted on
/dev/dsk/d0t0d0s7 12540304 4825027 7589874 39% /tibero
→ OS 명령인 ‘df –k’ 로 확인한 결과, tibero이 설치된 File-system의 용량이 39% 사용되고 있으므로 약 61%의 여유공간이 있음을 알 수 있습니다.
5.1.2. Archive 위치 / 용량 확인
Archive Log File은 Online Redo Log File의 Offline 복사본으로, 복구에 유용하게 쓰이는 파일입니다.
Archive Mode로 운용중인 시스템에서는 Archive Log가 저장되는 File-System의 주기적인 점검이 필요합니다.
SQL> archive log list
NAME VALUE
----------------------------------- -----------------------------------------------
Database log mode Archive Mode
Archive destination /tibero/tbdata/arch/
Oldest online log sequence 11
Next log sequence to archive 13
Current log sequence 13
→ tbsql에서 ‘archive log list’ 명령으로 Archive Mode운용여부와 Archive Log File 저장 위치를 확인할 수 있습니다.
# df -k
파일시스템 K바이트 사용 가용 용량 설치지점
/dev/rdsk/d9t0d0s3 51643047 14471941 36654676 29% /tibero/tbdata/arch
→ 현재 archive log file이 저장되는 위치의 File-system인 “/tibero/tbdata/arch”는 약 29% 사용중 입니다.
# cd /tibero/tbdata
# du -sk arch
1197877 arch → 약 1.18Gbyte (Kbyte 단위)
→ tbdata file-system으로 이동하여 ‘arch’ 디렉토리의 용량을 확인한 결과 약 1.18Gbyte의 Archive Log File이 저장되어 있음을 알 수 있습니다.
5.1.3. Tibero Datafile 위치 / 용량 확인 확인
SQL> select tablespace_name, file_name from dba_data_files;
TABLESPACE_NAME FILE_NAME
---------------------------- --------------------------------------------------
SYSTEM /tibero/tbdata/data/system001.dtf
UNDO /tibero/tbdata/data/undo001.dtf
USR /tibero/tbdata/data/usr001.dtf
SYSSUB /tibero/tbdata/data/syssub001.dtf
TEST01 /tibero/tbdata/data_1/tibero/test01001.dtf
TEST02 /tibero/tbdata/data_1/tibero/test02001.dtf
→ 위의 명령으로 조회하면 Tablespace_name과 Tablespace에 속해있는 File Name, File의 Size을 확인할 수 있습니다.
‘BYTES/1024/1024’ 는 File의 사이즈를 Mbyte로 조정해서 출력합니다.
# df –k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/dsk/d0t1d0s0 35007716 23638505 11019134 69% /tibero/tbdata/data
/dev/dsk/d0t0d0s7 12540304 11560337 854564 94% /tibero/tbdata/data_1
→ 현재 Datafile이 저장된 /tibero 의 File-system을 확인해보면 각 69%, 94%임을 알 수 있습니다.
/tibero/tbdata/data_1 는 가용량이 부족하므로 Datafile을 다른 File-system으로 이동 하거나 File-system 용량을 늘려주는게 좋습니다.
5.2. File system Full일 경우 조치 사항
Tibero 엔진과 Archive log 의 File-system이 100% Full일 때 DB Hang 현상이 발생할 수 있습니다.
$ df –k
파일시스템 K바이트 사용 가용 용량 설치지점
/dev/dsk/c0t0d0s7 12540304 12540304 0 100% /tibero
/dev/rdsk/c1t0d0s3 51643047 51643047 0 100% /tbdata/tbdata/data_1
5.2.1. Tibero 엔진 File system에서 불필요한 File 확인/삭제
Tibero 엔진 File-system에 불필요한 Log File, 백업 파일, 프로그램 파일 등이 있습니다.
확인 후 삭제하거나 다른 File-system으로 이동시킵니다.
5.2.2. 아카이브(archive) Log 삭제
디스크가 가득차는 등의 상황으로 Archive Log 파일 쓰기 작업이 불가능할 경우, Tibero는 동작이 정지되고
접속 및 SQL실행이 불가능한 Hang이 발생합니다.
Archive Log File은 주기적/지속적으로 생성되는 파일이므로 불필요한 경우 삭제 또는 이동합니다.
$ cd /tibero/tbdata/arch
$ ls –l
-rw------- 1 tibero dba 39936 Mar 27 04:38 log-t0-r0-s10.arc
-rw------- 1 tibero dba 42496 Mar 27 04:38 log-t0-r0-s11.arc
-rw------- 1 tibero dba 43520 Mar 27 05:19 log-t0-r0-s12.arc
-rw------- 1 tibero dba 17548288 Mar 21 23:29 log-t0-r0-s4.arc
-rw------- 1 tibero dba 3584 Mar 21 23:29 log-t0-r0-s5.arc
-rw------- 1 tibero dba 302080 Mar 21 23:41 log-t0-r0-s6.arc
-rw------- 1 tibero dba 8329728 Mar 22 09:49 log-t0-r0-s7.arc
-rw------- 1 tibero dba 10452992 Mar 26 22:32 log-t0-r0-s8.arc
-rw------- 1 tibero dba 246784 Mar 26 23:08 log-t0-r0-s9.arc
$ find . -name "*.arc" -mtime +1 -exec rm -rf {} ;
→ 현재 디렉토리에서 확장자가 ‘arc’인 File을 찾고, 수정(생성) 일자가 하루 이상 지난
(-mtime +1) File을 찾아서 rm 명령으로 삭제하는 명령어 입니다.
실제 삭제 시, 최종 백업받은 날짜 확인 후 백업일자 이전의 File을 삭제합니다.
SQL> select * from v$backup;
FILE# STATUS CHANGE# TIME
-------- ------------ ---------------------------------
0 NOT ACTIVE 87773 2023/03/27 15:36:19
1 NOT ACTIVE 87775 2023/03/27 15:36:19
2 NOT ACTIVE 87777 2023/03/27 15:36:19
3 NOT ACTIVE 87779 2023/03/27 15:36:19
4 NOT ACTIVE 87781 2023/03/27 15:36:19
5 NOT ACTIVE 87783 2023/03/27 15:36:19
6 rows selected.
→ 백업 날짜가 2023. 03. 27 이므로 그 이전의 archive log file은 삭제할 수 있습니다.
→ archive destination disk full 상황으로 Tibero 동작이 멈춘경우 archive log file을 삭제하면 정상적으로
서비스가 재개됩니다.