콘텐츠로 이동

Dumpla

dumpla#

개요#

dumpla는 이진 형식으로 저장된 loganchor 파일의 내용을 문자 형식으로 보여준다.

loganchor는 Altibase의 물리적인 저장 정보(테이블스페이스, 데이터 파일)와 복구를 위해 필요한 정보들이 저장되는 파일이다. Altibase는 데이터베이스 생성 시(CREATE DATABASE 실행 시)에 이 파일을 생성하고 altibase.properties에 설정된 세 개의 LOGANCHOR_DIR 디렉토리에 loganchor#(#은 1, 2, 3)의 이름으로 저장, 관리한다. 세 개의 파일은 모두 같은 내용으로 파일이 손상될 경우를 대비해 복사본을 유지하는 것이다. 데이터베이스 생성 시에 현재 데이터베이스에 존재하는 테이블스페이스와 이에 속한 데이터 파일, 그리고 복구 관련 정보들이 저장된다. 데이터베이스 구동 시에 이 정보들을 이용하여 데이터베이스를 메모리에 적재하고 서비스를 준비한다.

dumpla <loganchor_file_name>

구문#

dumpla

설명#

loganchor 파일의 내용을 텍스트 형식으로 보여준다.

사용 예#

쉘 프롬프트 상에서 다음과 같이 수행한다.

$ dumpla loganchor0

출력 항목#

dumpla는 loganchor의 내용을 다음과 같은 섹션으로 구분하여 출력한다.

[LOGANCHOR ATTRIBUTE SIZE]#

현재 Loganchor에 어떤 데이터들이 얼마만큼의 공간을 사용하고 있는지를 나타낸다. 내용은 다음과 같다.

필드 이름 값(단위 바이트) 설명
Loganchor Static Area 0 ~ unsigned int 타입의 최대값 Loganchor에 고정적으로 들어가는 정보의 크기를 나타낸다. 주로 복구 시 필요한 정보들이다.
Tablespace Attribute 0 ~ unsigned int 타입의 최대값 저장된 Tablespace Attribute의 크기
Checkpoint Path Attribute 0 ~ unsigned int 타입의 최대값 저장된 Checkpoint Path의 크기
Checkpoint Image Attribute 0 ~ unsigned int 타입의 최대값 저장된 Checkpoint Image Attribute의 크기
Disk Datafile Attribute 0 ~ unsigned int 타입의 최대값 저장된 Disk Datafile Attribute의 크기

[LOGANCHOR HEADER]#

데이터베이스의 버전 및 체크포인트 Log Sequence Number (LSN) 등의 loganchor Header 정보를 나타낸다. LSN에 대한 자세한 설명은 "dumplf 의 출력"절을 참고하기 바란다.

필드 이름 설명
Binary DB Version Major.minor.patch 예: 6.2.1 현재 Loganchor를 생성한 데이터베이스 실행 파일의 데이터베이스 버전이다.
Archivelog Mode Archivelog |No-Archivelog 데이터베이스가 아카이브 모드로 운영 중인지를 나타낸다.
Transaction Segment Entry Count
Begin Checkpoint LSN FileNo, Offset Begin Checkpoint의 LSN을 나타낸다.
End Checkpoint LSN FileNo, Offset End Checkpoint의 LSN을 나타낸다.
Disk Redo LSN FileNo, Offset DRDB의 Redo 시작 위치를 나타낸다.
LSN for Recovery from Replication FileNo, Offset 이중화를 이용한 복구 시 이 LSN부터 시작한다.
Server Status SERVER_SHUTDOWN |SERVER_STARTED 서버의 상태를 기록한다. 서버 시작 시 이 값이 SERVER_STARTED로 바뀌고 종료 시 SERVER_SHUTDOWN으로 바뀐다. 서버 시작 시에 이 값이 SERVER_STATED로 되어있다면 이전에 서버가 비정상 종료한 것이므로 재구동시 복구를 수행한다.
End LSN FileNo, Offset 서버가 정상 종료한 후 재구동시 첫 번째 기록되는 로그의 LSN
ResetLog LSN FileNo, Offset 불완전 복구시 설정된 Reset LSN
Last Created Logfile Num 0 ~ unsigned int 타입의 최대값 가장 최근에 생성된 로그 파일 번호
Delete Logfile(s) Range 삭제되는 첫 번째 ~ 마지막 파일 번호 가장 최근에 삭제된 로그 파일의 범위. 체크포인트 완료 후 더 이상 필요 없는 파일을 삭제하는데 이 때 지워지는 파일의 범위를 기록한다.
Update And Flush Count 0 ~ unsigned int 타입의 최대값 logAnchor 파일이 변경되고 플러시된 횟수
New Tablespace ID 0 ~ unsigned int 타입의 최대값 새로운 테이블스페이스 식별자. 테이블스페이스가 생성될 경우 이 값을 자신의 테이블스페이스 식별자로 사용하고 이 값을 증가시킨다.

[TABLESPACE ATTRIBUTE]#

메모리 테이블스페이스 정보를 나타낸다. 내용은 다음과 같다.

필드 이름 설명
Tablespace ID 0 ~ unsigned int 타입의 최대값 테이블스페이스 식별자
Tablespace Name 문자열 예: SYS_TBS_MEM_DIC 테이블스페이스 이름
New Database File ID 0 ~ unsigned int 타입의 최대값 테이블스페이스에서 새로 파일이 추가될 때 파일이 가지게 될 파일의 식별자
Extent Management FREE EXTENT BITMAP TABLESPACE 디스크 테이블스페이스의 extent가 어떤 방식으로 관리되는지를 나타낸다. 현재는 FREE EXTENT BITMAP TABLESPACE만 지원한다. FREE EXTENT BITMAP TABLESPACE를 enable하면, 디스크 테이블스페이스의 free extents를 관리하는데 bitmaps을 사용한다.
Tablespace Status 아래 TABLESPACE ATTRIBUTE 설명 참조 테이블스페이스의 현재 상태를 나타낸다.
Tablespace Type 0 ~ 8 아래 TABLESPACE ATTRIBUTE 설명 참조 테이블스페이스의 타입
Checkpoint Path Count Checkpoint Path 개수 체크포인트 이미지 파일들의 경로. 메모리 테이블스페이스에만 적용된다.
Autoextend Mode AutoExtend |Non-AutoExtend 테이블스페이스가 자동으로 크기가 확장되는지 여부를 가리킨다. 메모리 테이블스페이스에만 적용된다.
Shared Memory Key 0 ~ unsigned int 타입의 최대값 데이터베이스가 공유 메모리 버전이면 이 때 공유 메모리에 데이터베이스가 사용한 공유 메모리의 키
Stable Checkpoint Image Num 0|1 체크포인트가 완료된 체크포인트 이미지의 파일 번호 메모리 테이블스페이스에만 적용된다.
Init Size 0 ~ unsigned int 타입의 최대값 초기 크기(Mbyte)
Next Size 0 ~ unsigned int 타입의 최대값 자동 확장되는 증가분의 크기(Mbyte)
Maximum Size 0 ~ unsigned int 타입의 최대값 최대 크기
Split File Size 0 ~ unsigned int 타입의 최대값 메모리 테이블스페이스는 파일을 이 크기 단위로 생성한다. 예를 들어 테이블스페이스가 1G이고, Split file size가 100MB이면 10개의 파일이 생성된다.

[TABLESPACE ATTRIBUTE] 내용 중 Tablespace Status의 의미는 다음과 같다.

설명
OFFLINE 오프라인 상태
ONLINE 온라인 상태
INCONSISTENT 비일관적인 상태
CREATING 생성 중
DROPPING 삭제를 수행한 트랜잭션이 아직 커밋하지 않아 삭제 중인 상태
DROP_PENDING 삭제를 수행한 트랜잭션이 커밋 이후 Pending 연산 중인 상태
DROPPED 삭제된 상태
DISCARDED Discard된 상태
BACKUP 백업 중
SWITCHING_TO_OFFLINE OFFLINE으로 바뀌고 있는 중
SWITCHING_TO_ONLINE ONLINE으로 바뀌고 있는 중

[TABLESPACE ATTRIBUTE] 내용 중 Tablespace Type의 의미는 다음과 같다.

설명
0 MEMORY SYSTEM DICTIONARY
1 MEMORY SYSETM DATA
2 MEMORY USER DATA
3 DISK SYSTEM DATA
4 DISK USER DATA
5 DISK SYSTEM TEMP
6 DISK USER TEMP
7 DISK SYSTEM UNDO
8 VOLATILE USER DATA

[MEMORY CHECKPOINT PATH ATTRIBUTE]#

메모리 테이블스페이스의 체크포인트 저장 경로를 나타낸다. 내용은 다음과 같다.

필드 이름 설명
Tablespace ID 0 ~ unsigned int 타입의 최대값 테이블스페이스 식별자
Checkpoint Path 문자열 체크포인트 이미지 파일의 경로

[MEMORY CHECKPOINT IMAGE ATTRIBUTE]#

메모리 테이블스페이스의 체크포인트 이미지 정보를 나타낸다. 내용은 다음과 같다.

필드 이름 설명
Tablespace ID 0 ~ unsigned int 타입의 최대값 테이블스페이스 식별자
File Number 0 ~ unsigned int 타입의 최대값 파일 번호
Create LSN < FileNo, Offset> 데이터 파일 생성 시점의 LSN
Create On Disk (PingPong 0) Created|None 0번 체크포인트 이미지 파일 생성 유무
Create On Disk (PingPong 1) Created|None 1번 체크포인트 이미지 파일 생성 유무
ChangeTracking DataFileDescSlot ID 0 ~ unsigned int 타입의 최대값 Memory checkpoint image와 묶여있는 ChangeTracking의 DataFileDescSlot ID

[DISK DATABASE FILE ATTRIBUTE]#

디스크 테이블스페이스의 데이터 파일 저장 경로를 나타낸다. 내용은 다음과 같다.

필드 이름 설명
Tablespace ID 0 ~ unsigned int 타입의 최대값 테이블스페이스 식별자
Database File ID 0 ~ unsigned int 타입의 최대값 데이터 파일 식별자
Database File Path 문자열 데이터 파일의 경로
Create LSN < FileNo, Offset> 데이터 파일이 생성된 시점의 시스템 로그의 마지막 LSN
Database File Status 아래 DISK_DATABASE_FILE_ATTRIBUTE 설명 참조 파일의 상태
Autoextend Mode AutoExtend| Non-AutoExtend 자동 확장 설정 여부
Create Mode 0|1 0: 재사용 1: 새로 생성한 파일
Initialize Size 0 ~ unsigned int 타입의 최대값 초기 크기(MByte)
Current Size 0 ~ unsigned int 타입의 최대값 현재 크기(MByte)
Next Size 0 ~ unsigned int 타입의 최대값 확장 단위 크기(MByte)
Maximum Size 0 ~ unsigned int 타입의 최대값 최대 크기(MByte)
ChangeTracking DataFileDescSlot ID 0 ~ unsigned int 타입의 최대값 Disk datafile과 묶여있는 ChangeTracking의 DataFileDescSlot ID

[DISK DATABASE FILE ATTRIBUTE] 내용 중 Database File Status의 의미는 다음과 같다.

설명
OFFLINE 오프라인 상태
ONLINE 온라인 상태
CREATING 생성 중
BACKUP_BEGIN 백업을 시작한 상태
BACKUP_END 백업을 종료 중인 상태
DROPPING 삭제 중인 상태
RESIZING 크기를 바꾸고 있는 상태
DROPPED 삭제된 상태

다음은 dumpla의 출력 결과 중 일부분을 예로 보인 것이다.

[ DISK DATABASE FILE ATTRIBUTE ]
Tablespace ID                  [ 2 ]
Database File ID               [ 0 ]
Database File Path C:\altibase_home\dbs\system001.dbf]
Create LSN                     [0, 4443 ]
Database File Status           [ ONLINE ]
Autoextend Mode                [ Non-Autoextend ]
Create Mode                    [ 0 ]
Initialize Size                [10 MBytes(1280 Pages)]
Current Size                   [10 MBytes(1280 Pages)]
Next Size                      [0 MBytes(0 Pages)]
Maximum Size                   [0 MBytes(0 Pages)]

[Change Tracking ATTRIBUTE]#

changeTracking 파일에 대한 정보를 나타낸다. 내용은 다음과 같다.

필드 이름 설명
Last Flush LSN FileNo, Offset 메모리상의 변경된 데이터가 파일로 기록된 시점의 LSN
Change Tracking Manager State 문자열. 예: CHANGE TRACKING MGR ENABLED 페이지 변경 추적 기능의 상태
Change Tracking File Name 문자열 변경 추적 파일의 경로

[Backup Info ATTRIBUTE]#

backupinfo 파일에 대한 정보를 나타낸다. 내용은 다음과 같다.

필드 이름 설명
Delete Archivelog File Range FileNo, Offset 삭제해도 완전 복구가 가능한 아카이브 로그 파일의 번호
Last Backup LSN FileNo, Offset 최근에 수행된 백업 시점의 LSN
Before Backup LSN FileNo, Offset 최근에 수행된 백업이전에 수행된 LSN
Backup Info Manager State 문자열. 예: BACKUP INFO MGR INITIALIZED 백업 정보 파일 관리자의 상태
Backup Directory Path 문자열. 예: /backup_dir/ 백업 경로
Backup Info File Name 문자열 백업 정보 파일 이름