본문으로 건너뛰기

설정하기

1. 지원 버전

Altibase 버전지원 여부비고
Altibase 6.3 이상 (6.3 버전의 경우 일부 지원)✅ 지원v3.0.506.15 버전부터 지원

Altibase 6.3 드라이버 적용 방법

Altibase 6.3 사용 시 별도 ODBC 드라이버를 DB-Agent에 등록해야 모니터링이 가능합니다.

Docker 모드 실행 시

  1. 전달받은 T209934_libaltibase_odbc-64bit-ul641.so 파일을 $EXEMONE_HOME/containers/exemone-db-agent/libs 디렉토리에 복사합니다.
  2. 파일명을 libaltibase_odbc-64bit-ul64.so로 변경합니다.
  3. 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

docker-compose.yml 볼륨 설정

  1. db-agent 모듈을 재시작합니다.
$EXEMONE_HOME/scripts/restart db-agent

Binary 모드 실행 시

  1. 전달받은 드라이버 파일을 $EXEMONE_HOME/libs 디렉토리에 복사합니다.
  2. 파일명을 libaltibase_odbc-64bit-ul64.so로 변경합니다.
  3. docker-compose.yml 파일에 아래 볼륨 경로를 추가합니다.
$EXEMONE_HOME/libs/libaltibase_odbc-64bit-ul64.so:/usr/local/lib/altibase/libaltibase_odbc-64bit-ul64.so
  1. db-agent 모듈을 재시작합니다.
$EXEMONE_HOME/.onctl restart db-agent

2. 필수 권한

2-1. 기본 모니터링 권한

권한설명
CREATE SESSIONDB 접속 권한
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기본 권한으로 조회 가능(추가 권한 불필요)
UPDATEUPDATE ANY TABLE
DELETEDELETE ANY TABLE
INSERTINSERT 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_statistics0(비활성화)1(활성화)수행되는 모든 SQL문의 수행 시간을 v$statement에 기록
ALTER SYSTEM SET timed_statistics = 1;

기본값 0에서는 SQL 수행 시간이 기록되지 않으므로, 반드시 1로 변경해야 SQL 수행 시간 데이터를 수집할 수 있습니다.