| Table of Contents | ||
|---|---|---|
|
개요
...
Altibase가 구동과 종료되는 과정에 대해서 설명하고, 각 과정에서 Altibase 내부 모듈들이 동작하는 내용과 사용자가 수행할 수 있는 작업에 대해서 기술한다.
...
| Note |
|---|
이 문서는 정보 제공을 목적으로 제공되며, 사전에 예고 없이 변경될 수 있습니다. 이 문서는 오류가 있을 수 있으며, 상업적 또는 특정 목적에 부합하는 명시적, 묵시적인 책임이 일절 없습니다. 이 문서에 포함된 Altibase 제품의 특징이나 기능의 개발, 발표 등의 시기는 Altibase 재량입니다. Altibase는 이 문서에 대하여 관련된 특허권, 상표권, 저작권 또는 기타 지적 재산권을 보유할 수 있습니다. |
Altibase Startup
...
Altibase는 구동 과정을 4 단계로 구분한다.
...
또, 사용자가 각 단계에서 수행할 수 있는 작업들에 대하여 기술함으로써 Altibase를 효율적으로 사용할 수 있도록 한다.
구동 개요
...
DB를 구동 과정이 한 단계로 되면, 서버가 구동되기 전 할 수 있는 작업과 서버 구동 후 할 수 있는 작업이 엄격히 구분되어 한 번의 명령어 실행으로 DB가 구동되기 때문에 DBA가 클라이언트와 구별된 작업을 수행할 수 없다.
...
아래에서 각 단계별 Altibase 내부적으로 수행되는 동작들과 사용자가 수행할 수 있는 작업들에 대해서 설명한다.
PROCESS 단계
...
- PROCESS 단계 전환 명령어
Altibase를 구동시킬 때의 가장 처음 단계로, “STARTUP PROCESS” 명령어를 통하여 상태를 전이할 수 있다.
이 단계에서는 DB에 대한 접근이 불가능하다.PROCESS 단계는 각 모듈(Storage Manager, Query Processor, Communication Manager 등)이 초기화되는 단계이며, 서버와 iSQL이 통신을 하기 위해 Altibase 프로세스를 시작하게 된다.
...
CREATE DATABASE 구문을 사용하여 데이터베이스 생성
- 프로퍼티 값을 변경
- iSQL 에서 ALTER 명령어로 변경이 가능한 프로퍼티 값들을 변경
사용자가 조회활 수 있는 성능 뷰
뷰 설명 V$ACCESS_LIST Altibase에 접근하는 특정 IP 패킷의 접근 허용 및 제한 정보 V$ALLCOLUMN
성능 뷰를 구성하는 칼럼 정보
V$DBA_2PC_PENDING
분산 트랜잭션에서 in-doubt 상태의 트랜잭션 브랜치 목록
V$DIRECT_PATH_INSERT Direct-Path 업로드 관련 통계 정보 V$INSTANCE 현재 알티베이스의 다단계 구동 정보
V$NLS_TERRITORY 데이터베이스 또는 현재 세션에 설정 가능한 지역의 이름이 저장되어 있는 성능 뷰 V$PROPERTY
알티베이스 내부에 설정된 프로퍼티 정보
V$TABLE 모든 성능 뷰의 레코드 및 칼럼 정보
V$TIME_ZONE_NAMES TIME_ZONE 프로퍼티에 설정할 수 있는 지역 이름과 약어 및 UTC 오프셋 값의 목록 V$TRACELOG
트레이스 로깅 정보
V$TRANSACTION 트랜잭션 객체 정보 V$TRANSACTION_MGR 알티베이스 트랜잭션 관리자 정보 V$TXSEGS 바인딩 된 트랜잭션 세그먼트들의 정보 V$VERSION 알티베이스 버전 정보
- 프로퍼티 값을 변경
- CONTROL 단계 등의 상위 단계로 전이
CONTROL단계
...
- CONTROL 단계 전환 명령어
CONTROL 단계는 PROCESS 단계에서의 작업을 마치고 "STARTUP CONTROL" 명령어를 통해서 상태를 전이할 수 있다.
...
데이터베이스 모드 변경
성능 뷰 조회
PROCESS 단계에서 조회가 가능한 성능 뷰와 추가적으로 다음의 성능 뷰를 조회할 수 있다.
(일반 테이블은 조회 할 수 없다.)뷰 설명 V$BACKUP_INFO 현재까지 수행 된 모든 증분 백업에 대한 정보 V$DATAFILES
테이블스페이스에서 사용하는 데이터 파일의 정보
V$FILESTAT
디스크의 데이터 파일별 I/O 통계 정보
V$LFG 그룹커밋 관련 통계값
V$LOCK_WAIT
트랜잭션의 락 대기 상태 정보
V$LOG 로그앵커파일 정보 V$MEM_TABLESPACE_CHECKPOINT_PATHS 특정 테이블스페이스(메모리)에 대해 체크포인트 발생 시 변경된 페이지(Dirty Page)가 반영되는
데이터베이스 이미지 파일의 위치(디렉토리 경로)V$MEM_TABLESPACE_STATUS_DESC 메모리 테이블스페이스의 상태 값 내용 정보
V$OBSOLETE_BACKUP_INFO 더 이상 유지할 필요가 없는 백업에 대한 정보
(V$BACKUP_INFO의 일부로 자세한 내용은 V$BACKUP_INFO 정보 참고)V$TABLESPACES
테이블스페이스 정보
V$TSSEGS 모든 TSS 세그먼트들의 정보 - META 단계 등의 상위 상태로 전이
META 단계
...
- META 단계 전환 명령어
META 단계는 CONTROL 단계에서의 작업을 마치고 "STARTUP META" 명령어를 통해서 상태를 전이할 수 있다.
...
- META 단계에서 수행할 수 있는 작업
사용자가 META 단계에서 수행할 수 있는 작업은 다음과 같다.모든 성능 뷰 조회 가능
SERVICE 단계 등의 상위 상태로 전이 가능
SERVICE 단계
...
- SERVICE 단계 전환 명령어
SERVICE 단계는 META 단계에서의 작업을 마치고 "STARTUP SERVICE or STARTUP" 명령어를 통해서 상태를 전이할 수 있다.
...
- SERVICE 단계에서 수행할 수 있는 작업
사용자가 SERVICE 단계에서 수행할 수 있는 작업은 다음과 같다.- iSQL 접속
정상적인 DB 운영이 가능한 상태
Altibase Stop
...
Altibase 중지의 개요 및 특징에 대해서 설명하고, Altibase 에서 제공하는 중지의 세 가지 옵션들과 Altibase 종료 시에 수행되는 동작들에 대해서 기술한다.
중지 개요
...
Altibase의 구동 과정은 4 단계로 구분되어 진행하지만, 중지을 하면 구동에서 수행한 과정을 역순으로 진행하며 1단계로 종료한다.
(SERVICE → META → CONTROL → PROCESS)
...
Altibase의 중지 명령어는 설치한 OS 계정으로만 수행이 가능하다.

NORMAL
...
서버를 정상적으로 종료하는 방식으로서, 서버는 모든 클라이언트들이 서버로부터 접속을 끊을 때까지 종료 작업을 대기한다.
...
- 다음은 NORMAL 옵션을 사용하여 Altibase 서버를 종료할 때, Altibase가 수행하는 동작들이다.
- 현재 유저가 sysdba 권한인지 확인
- 모든 세션이 종료할 때까지 대기
- 각 모듈(Storage Manager, Query Processor, Communication Manager 등)을 종료
- Altibase 프로세스 종료
IMMEDIATE
...
현재 연결된 세션들을 강제로 단절시킨 후 Altibase 서버가 현재 실행 중인 트랜잭션을 롤백시키고 Altibase 서버를 종료하는 방법이다.
...
- 현재 유저가 sysdba 권한인지 확인
- 현재 연결 중인 모든 세션을 강제 종료
- 현재 수행중인 트랜잭션을 롤백
각 모듈(Storage Manager, Query Processor, Communication Manager 등)을 종료
- Altibase 프로세스 종료
- "SHUTDOWN IMMEDIATE" 시의 내부 동작
altibase_boot.log를 살펴보면, 중지는 구동 할 때와 역순의 과정을 수행하여 종료한다. "SHUTDOWN IMMEDIATE" 시 Altibase 가 내부적으로 동작하는 작업은 다음과 같다.- 중지를 위한 준비를 하며, 각 모듈에 대해 종료
- SERVICE, Database Link, Security, Query Processor, Storage Manager 등의 모듈 종료 (02) ~ (10)
- 서버 운영 중 사용되었던 모든 Resource 등을 해제
- Checkpoint Manager, Memory Garbage Collector, Delete Manager 등 (11) ~ (42)
- Table Compaction (14)
- 메모리에 할당된 후 제대로 반환되지 않은 공간을 시스템에 반환
- Flush All Dirty Pages And Checkpoint Database (24)
- 메모리 버퍼에 적재된 페이지들 중 Dirty Pages 에 대해서 디스크로 Flush
- 메모리 테이블스페이스에 있는 데이터에 대해 체크포인프 수행
- Flush 해야 하는 대상과 체크포인트를 해야하는 대상이 많아지면 중지 시 대기 시간 증가
- 중지를 위한 준비를 하며, 각 모듈에 대해 종료
ABORT
...
Altibase 서버를 kill -9 시스템 명령을 사용하여 강제로 종료하는 방법이다.
...