Altibase 모니터링
exemONE Altibase 데이터베이스 모니터링 상세 가이드
1. 지원 버전
| Altibase 버전 | 지원 여부 | 비고 |
|---|---|---|
| Altibase 6.3 이상 | ✅ 지원 | v3.0.506.15 버전부터 지원 |
Altibase 6.3 드라이버 적용 방법
Altibase 6.3 사용 시 별도 ODBC 드라이버를 DB-Agent에 등록해야 모니터링이 가능합니다.
Docker 모드 실행 시
- 전달받은
T209934_libaltibase_odbc-64bit-ul641.so파일을$EXEMONE_HOME/containers/exemone-db-agent/libs디렉토리에 복사 - 파일명을
libaltibase_odbc-64bit-ul64.so로 변경 docker-compose.yml파일의 db-agent 모듈 볼륨 항목에 경로 추가:
$EXEMONE_HOME/containers/exemone-db-agent/libs/libaltibase_odbc-64bit-ul64.so:/usr/local/lib/altibase/libaltibase_odbc-64bit-ul64.so

- db-agent 모듈 재시작:
$EXEMONE_HOME/scripts/restart db-agent
Binary 모드 실행 시
- 전달받은 드라이버 파일을
$EXEMONE_HOME/libs디렉토리에 복사 - 파일명을
libaltibase_odbc-64bit-ul64.so로 변경 docker-compose.yml파일에 볼륨 경로 추가:
$EXEMONE_HOME/libs/libaltibase_odbc-64bit-ul64.so:/usr/local/lib/altibase/libaltibase_odbc-64bit-ul64.so
- db-agent 모듈 재시작:
$EXEMONE_HOME/.onctl restart db-agent
2. 필수 권한
2-1. 기본 모니터링 권한
| 권한 | 설명 |
|---|---|
| CREATE SESSION | DB 접속 권한 |
| SELECT ANY TABLE | 모든 테이블(SYSTEM_, V$)에 대한 SELECT 권한 |
권한 부여 SQL 예시
-- 모니터링 계정에 기본 권한 부여
GRANT CREATE SESSION TO exemone;
GRANT SELECT ANY TABLE TO exemone;
2-2. Kill Session 권한
| 조건 | 설명 |
|---|---|
| SYS 계정 필수 | Altibase는 Kill Session이 SYS 계정만 가능 |
- exemone 계정으로는 Kill Session이 불가하므로, Kill Session 기능을 사용하려면 모니터링 계정을 SYS 계정으로 등록해야 합니다.
2-3. Plan 조회 추가 권한
| 구문 유형 | 필요 권한 |
|---|---|
| SELECT | 기본 권한으로 조회 가능 (추가 권한 불필요) |
| UPDATE | UPDATE ANY TABLE |
| DELETE | DELETE ANY TABLE |
| INSERT | INSERT ANY TABLE |
| EXECUTE절 내 함수 사용 | EXECUTE ANY PROCEDURE |
또는 ALL PRIVILEGES를 부여하여 모든 권한을 한번에 설정할 수 있습니다.
-- DML Plan 조회를 위한 추가 권한 부여
GRANT DELETE ANY TABLE TO exemone;
GRANT INSERT ANY TABLE TO exemone;
GRANT UPDATE ANY TABLE TO exemone;
GRANT EXECUTE ANY PROCEDURE TO exemone;
-- 또는 전체 권한 부여
GRANT ALL PRIVILEGES TO exemone;
2-4. Plan 조회 불가 구문
(1) 예외 처리된 구문 (EXPLAIN PLAN 옵션과 무관하게 실제 실행되는 구문)
CREATE TABLE,CREATE PROCEDURE,CREATE QUEUE,ALTER,DROP,TRUNCATE,EXECUTE,LOCK,GRANT
(2) 개발 스펙상 Plan 제공 대상에서 제외된 구문
MOVE,DEQUEUE,ENQUEUE
3. 사전 설정
3-1. SQL 수행 시간 수집 설정
| 파라미터 | 기본값 | 권고값 | 설명 |
|---|---|---|---|
timed_statistics | 0 (비활성화) | 1 (활성화) | 수행되는 모든 SQL문의 수행 시간을 v$statement에 기록 |
ALTER SYSTEM SET timed_statistics = 1;
- 기본값 0에서는 SQL 수행 시간이 기록되지 않으므로, 반드시 1로 변경해야 SQL 수행 시간 데이터를 수집할 수 있습니다.
5. 모니터링 확인
Instance Detail Slide
(1) Information

- Agent: Instance Name, Status, Instance Group Name, DB Version, Agent Version, Last Boot Time, Uptime
- Machine: Host Name, Host IP, OS, Kernel Version
- Replication Map: Instance에 연결된 Replication 정보
(2) Metric

- Default로 최근 5분 데이터를 표시하며, 인스턴스 지표를 모니터링합니다.
(3) Active Session

- 실행 중인 Active Session 목록을 실시간으로 확인합니다. Multi Kill 기능으로 다수 세션 동시 종료가 가능합니다.
(4) SQL List

- 최근 수집된 SQL 목록을 확인하며, DB/Digest/SQL Text 검색 및 합계/평균 토글 기능을 제공합니다.
(5) Lock Info

- Lock 상태의 Session 목록과 Holder 정보를 확인합니다. Multi Kill로 Lock Session 종료가 가능합니다.
(6) Memory Table List

- Memory Table List를 확인하는 화면입니다.
(7) Memory Module List

- Memory Module List를 확인하는 화면입니다.
(8) Alert / (9) Parameter / (10) Host Process List
- Alert 발생 현황, DB 파라미터 조회, 호스트 프로세스 목록(PID, Process Name, CPU, Memory 등) 모니터링을 제공합니다.
Replication Detail Slide
(1) Information

- 인스턴스에 연결된 레플리케이션의 디테일의 정보를 표시하는 화면입니다.
- 주요 항목: Replication Information, Sender Information, Receiver Information
(2) Metric

- 인스턴스에 연결된 레플리케이션의 디테일의 Metric을 표시하는 화면입니다.
Top N Analysis
Stacked Area Chart를 활용하여 특정 기간 동안의 Top SQL을 조회하는 기능을 제공합니다.

Trend Analysis
날짜 별, 시간 별 성능 추이 확인이 가능한 화면으로, 특정 시점의 정밀한 성능 분석 기능을 제공합니다.

- 하단 탭: Session, Lock Tree, SQL Summary, Top Event, Long Active Session, Top Processes
Replication Analysis
최대 2일 이내의 이중화(Replication) 성능 추이 확인이 가능한 화면으로, 특정 시점의 정밀한 성능 분석 기능을 제공합니다.

(1) Replication Detail
Altibase의 Replication Object 별로 상세 지표를 제공합니다.

- 주요 항목: Loss Rate Chart, Top Replication Objects Grid, Sender Charts, Receiver Charts
참고 문서: