Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
모니터링 DB 인스턴스 및 장비에 관한 상세 정보를 제공한다.
TPM Agent ID
TPM Agent의 application.yml 파일에 설정한, 해당 DB의 내부 식별 ID
Instance Monitoring 페이지의 Layout Tab 영역에서는 다양한 지표를 사용자가 원하는 형태로 모니터링 할 수 있다.
Instance Alias
SysMaster DB UI상에 표시되는 인스턴스 이름
Type
모니터링 DB 타입
IP
관제 대상 인스턴스의 IP
Port
관제 대상 인스턴스의 Listener Port
DB Name
관제 대상 인스턴스의 DB 이름 (티베로일 경우 DB SID)
DB User
관제 대상 인스턴스의 모니터링 계정
DB Cluster
관제 대상의 클러스터 여부 표시
DB Platform
관제 대상 장비에 설치된 OS
DB Hostname
관제 대상 인스턴스가 설치된 장비의 hostname
DB TIP
관제 대상 인스턴스의 TIP 파일 (설정 파일) 경로
OS Version
관제 대상 장비에 설치된 OS 상세 정보
DB Version
관제 대상 인스턴스의 버전 정보
DB Build Number
관제 대상 인스턴스 빌드 번호
DB Patch List
관제 대상 DB에 적용된 패치 리스트

본 절에서는 DB Session 현황, DB 머신의 CPU 및 Memory 사용량, DB 인스턴스의 다양한 지표를 차트를 통하여 모니터링 할 수 있는 Main Monitoring에 대해 설명한다.
Session MonitoringServer MonitoringInstance MonitoringInstance Monitoring 페이지의 Layout Tab 영역에서 제공되는 모니터링 지표 차트의 기능과 종류에 대해 설명한다.
안내서 정보
안내서 제목 : SysMasterDB 매뉴얼 발행일 : 2026-04-15 소프트웨어 버전 : SysMasterDB 8.3.5 안내서 버전 : v1.5.0
본 안내서는 SysMasterDB 8.3를 시스템에 설치하는 과정을 설명한다.
SysMasterDB 8.3를 설치하고자 하는 시스템 관리자 그리고 DBA를 대상으로 기술한다.
데이터베이스의 이해
RDBMS의 이해
운영체제 및 시스템 환경의 이해
UNIX 계열(LINUX 포함)의 기본 지식
티맥스티베로 SysMasterDB 매뉴얼에 적용되는 저작권 안내사항 이다.
경기도 성남시 분당구 정자일로 45 티맥스타워
Tel : +82-1544-8629
E-Mail :
이 소프트웨어(SysMasterDB 8®) 사용설명서의 내용과 프로그램은 저작권법과 국제 조약에 의해서 보호받고 있다. 사용설명서의 내용과 여기에 설명된 프로그램은 TmaxTibero Co., Ltd.와의 사용권 계약 하에서만 사용이 가능하며, 사용설명서는 사용권 계약의 범위 내에서만 배포 또는 복제할 수 있다. 이 사용설명서의 전부 또는 일부분을 TmaxTibero의 사전 서면 동의 없이 전자, 기계, 녹음 등의 수단을 사용하여 전송, 복제, 배포, 2차적 저작물 작성 등 의 행위를 하여서는 안된다.
이 소프트웨어 사용설명서와 프로그램의 사용권 계약은 어떠한 경우에도 사용설명서 및 프로그램과 관련된 지적 재산권(등록 여부를 불문)을 양도하는 것으로 해석되지 아니하며, 브랜드나 로고, 상표 등을 사용할 권한을 부여하지 않는다. 사용설명서는 오로지 정보의 제공만을 목적으로 하고, 이로 인한 계약상의 직접적 또는 간접적 책임을 지지 않으며 사용설명서 상의 내용은 법적 또는 상업적인 특정한 조건을 만족시키는 것을 보장하지는 않는다. 사용설명서의 내용은 제품의 업그레이드나 수정에 따라 그 내용이 예고 없이 변경될 수 있으며, 내용상의 오류가 없음을 보장하지 않는다.
SysMaster DB 8®는 TmaxTibero Co., Ltd.의 등록 상표이다. 기타 모든 제품들과 회사 이름은 각각 해당 소유주의 상표로서 참조용으로만 사용된다.
Spoqa Han Sans Neo 및 Inconsolata가 적용되며 SIL Open Font License 이다.
상세정보는 제품 내 위치한 아래의 디렉터리에서 확인할 수 있다. ${INSTALL_PATH}/license/font_li censes
본 제품의 일부 파일 또는 모듈은 아래의 라이선스를 준수한다. Apache License 2.0, BSD 2-Clause License, CDDL 1.0 / 1.1, Confluent Community License, Eclipse Public License (EPL) 1.0 / 2.0, Eclipse Distribution License 1.0, GNU General Public License (GPL) 2.0, GNU Lesser General Public License (LGPL) 2.1, MIT License, MIT-0, Mozilla Public License (MPL) 1.1 / 2.0, Public Domain (CC0 포함), Revised BSD License, The JSON License, WTFPL
상세정보는 제품 내 위치한 아래의 디렉터리에서 확인할 수 있다. $BINARY_HOME/oss_license
본 문서는 총 8개의 장으로 구성된다.
SysMasterDB 8 설치 과정을 설명한다.
🔎
SysMasterDB 접속부터 권한 설정 등 사용자 설정 과정을 안내한다.
🔎
SysmasterDB의 Dashboard에 대해 안내한다.
🔎
지정한 기간 동안에 변경된 SQL Plan에 대해 비교 분석 기능을 제공한다.
각 관제 DB에서의 세션 접속 추이와 각 시점의 세션 접속 현황을 제공한다.
주어진 기간동안 Hard Parse가 발생한 SQL 리스트를 확인 할 수 있다.
사용자가 설정한 알림 및 시스템 알림 규칙 대한 알림 발생 이력을 확인할 수 있다
Invalid Objects Count 데이터와 Invalid Objects 상세 정보를 확인할 수 있다.
페이지로 연결된다.
Super Admin 유저는 아래와 같이 Global Navigation Bar (GNB) > Profile > About 클릭 시 화면에 표출되는 모달을 통해 현재 서비스에 적용된 라이선스 정보를 확인할 수 있다.
아래는 About 모달 예시 화면으로, License Info 영역을 통해 라이선스 타입, 만료 기한, 잔여 코어 수를 확인할 수 있다.
추가로, , 페이지에서도 라이선스 정보 확인이 가능하다.
본 장에서는 SysMasterDB 접속 이후의 사용 방법을 다음과 같은 단계로 설명한다.
- 로그인 및 그룹 선택 방법에 대해 설명한다.
- 그룹과 권한에 대해 설명한다.
- 유저 생성 방법에 대해 설명한다.
[Edit Layout] 버튼을 클릭하여 기존 Layout 설정을 변경할 수 있다.
Edit Layout 페이지의 각 항목별 설명은, 을 참고한다.
Admin 계정은 다음과 같은 권한을 기본적으로 보유한다.
Settings > User 메뉴를 통해 소속 그룹의 멤버 관리(사용자 생성, 수정, 삭제)
소속 그룹에서 관제하는 모든 인스턴스에 대한 모든 Configurable Privileges
한 그룹에 Admin은 0명 이상 존재할 수 있다.
현재 모니터링 중인 인스턴스들의 Aert 발생 현황을 나타내는 영역이다. 각 Alert Level (Error, Warning, Info) 별로 몇개의 Alert가 발생하고 있는지 표시한다. 버튼을 클릭하여 해당 인스턴스의 Alert Event History로 이동한다.
User Created Alert 및 System Alert 모두 확인 할 수 있으며, Alert가 발생한 시각, Alert 이름, Alert 레벨, Alert가 발생한 인스턴스, Confirm 여부 및 Alert 확인시 작성한 유저 Comment 이력을 확인 할 수 있다.
인스턴스 및 필터 조건을 변경하여 다른 인스턴스 및 특정 시간대에서 발생한 Alert들을 조회 할 수 있다.
Super Admin은 SysmasterDB의 모든 기능을 수행할 수 있는 최고 관리자를 의미한다.
Super Admin 계정은 다음과 같은 권한을 기본적으로 보유한다.
Dashboard에서 인스턴스 등록, 수정, 삭제
Settings > All Groups 메뉴를 통한 그룹 생성, 수정, 삭제
Settings > All Users 메뉴를 통한 SysMasterDB에 등록된 모든 사용자 생성, 수정, 삭제
Super Admin은 SysmasterDB에서 단 한 명만 존재한다.
본 장에서는 데이터베이스의 실시간 상태 모니터링 기능을 제공하는 Realtime Monitoring에 대해 설명한다.
- DB 세션 현황, DB 머신의 CPU 및 메모리 사용량 등 DB 실시간 지표들을 확인할 수 있다.
- 테이블스페이스, 파일, UNDO 및 TEMP 공간의 실시간 상태를 확인할 수 있다.
- DB 세션 간의 Lock 현황을 파악하고 문제를 분석할 수 있다.
Layout 목록에서 특정 Layout의 더보기 버튼 클릭 시 제공되는 Delete 기능을 통해 기존 Layout을 삭제할 수 있다.
글로벌 내비게이션 바에서 [Analysis] > [History Analysis] > [Search SQL Text] 메뉴를 클릭하면 Search SQL Text 화면이 열린다. Search SQL Text 화면에서는 지정한 기간 동안의 SQL 목록을 확인할 수 있다.
Search SQL Text 화면의 SQL 목록에서 특정 열을 더블 클릭하면 해당 SQL의 상세 정보를 확인할 수 있 는 화면이 열린다.
CPU / Memory 파이 차트에 마우스를 호버하여 상세 정보를 확인할 수 있다.
Lock Waiter: 인스턴스가 락을 기다리고 있는 세션 갯수를 표시한다.
Tablespace: 사용량이 90% 이상인 테이블스페이스 갯수를 표시한다. 하단에 스크롤 가능한 테이블을 통해 테이블스페이스 사용 현황을 표시한다.
프로파일 기능을 통해 아래의 동작을 수행할 수 있다.
내 계정 설정
테마 변경 (Light / Dark)
About
Kubernetes 환경에서 SysMaster DB 를 기동 / 로그 확인/ 종료 / 초기화하는 방법이다.
설치 파일이 위치한 디렉터리에서 아래와 같은 순서로 명령을 수행하여 쿠버네티스 오브젝트를 생성한다.
다음 단계로 진행하기 전 RepoDB, MetaDB가 정상적으로 부팅 완료되어야 한다. 이는 다음과 같은 로그를 통해 확인 가능하다.
먼저 각각 해당 pod의 터미널 출력 로그에서 아래와 같은 메세지가 출력되는 것을 확인한다.
다음으로 각 데이터베이스의 로그파일에 아래와 같은 메세지가 출력되는 것을 확인한다.
이때 각 데이터베이스의 로그 파일 확인 방법은 을 참고한다.
sysmasterdb8-sdm-container가 생성되면, 해당 컨테이너 내 sysmaster/license
본 절에서는 Tablespace, File, Temp 스페이스, Undo 스페이스 사용 현황을 실시간 모니터링 할 수 있는 Usage Monitoring에 대해 설명한다.
Layout 목록에서 특정 Layout의 더보기 버튼 클릭 시 제공되는 Copy 기능을 통해 기존 Layout을 복사할 수 있다.
[Copy] 클릭 시 복사 대상 Layout의 복사본이 생성되며, 사용자는 복사본 Layout의 이름을 직접 설정하여 저장할 수 있다.
All Session Flow 페이지에서 Period Selector는 Chart Interval 기능이 추가되어있다. 공통 기능의 Period Selector는 조회 기간에 따라 Chart Interval이 동적으로 결정되지만 All Session Flow 페이지에서는 사용자가 Chart Interval을 지정할 수 있다.
Chart Interval은 각각 sec, min, hour, day가 존재하고 선택한 Period가 Chart Interval로 표현할 수 있는 시간을 포함하는 경우 선택할 수 있다.
New Plan List 화면에서는 신규 Plan 이력을 확인할 수 있다.
다음은 New Plan List 화면에서 제공하는 항목에 대한 설명이다.
SysMaster DB 8.3 설치 방법을 과 으로 나누어 설명한다. 이때 각 환경에서 다음과 같은 단계로 설명한다.
설치 및 파라미터 설정 - SysMaster DB 8.3 의 설치 및 파라미터 설정방법에 대해서 설명한다.
기동 / 로그 확인 / 종료 / 초기화- 기동, 로그 확인, 종료, 초기화 방법에 대해서 설명한다.
마지막으로 에서는 SysMaster DB 8.3에서 사용하는 포트들에 대해서 설명한다.
글로벌 내비게이션 바에서 [Analysis] > [Perfomance Analysis] > [Heatmap Trend] 메뉴를 클릭하면 Heatmap Trend 화면이 열린다.
Heatmap Trend 화면에서는 선택한 인스턴스의 Resource 사용량에 대한 Overview를 확인할 수 있다. 이때 지정한 구간 동안 시간, 일자별로 Resource 사용량을 도식화하여 한눈에 확인할 수 있고, 선택한 시간의 분 단위 막대 그래프로 정밀하게 전체적인 사용량의 흐름을 알 수 있다.
Plan History Comparison 화면에서는 TimeStamp와 Child Number가 다른 동일한 SQL에 대해 Plan을 비 교할 수 있다. 이때 Plan에 대한 비교는 Plan Tree 형태와 Plan Text 형태로 확인할 수 있다.
본 장에서는 SysMaster DB 8 설치 과정을 설명한다.
그룹 선택 화면에서는 사용자가 들어갈 그룹을 선택한다. 만약 사용자가 아무런 그룹에 소속되어 있지 않다면, Undefined(그룹 없음)으로 로그인이 가능하다.
원하는 그룹을 선택한 후 Sign In to group 버튼을 누르면 대시보드 화면으로 이동한다.
SysMaster DB 8.3를 설치하기 전 준비 과정을 다음과 같은 단계로 설명한다.
- 설치하기 전에 확인해야 할 시스템의 요구 사항에 대해서 설명한다.
- SysMaster DB 8.3를 설치하기 전에 필요한 환경 구성에 대해서 설명한다.
- 설치를 위한 배포 파일들의 구성 요소에 대해서 설명한다.







관제 데이터베이스의 설정 방법 및 TPM Agent의 설치 방법을 다음과 같은 단계로 설명한다.
유저 / TIP 설정 - 관제 데이터베이스의 유저와 TIP 설정하는 방법을 설명한다.
TPM Agent 설치하기 - TPM Agent의 설치 방법을 설명한다.
Group 생성하기 - 그룹 생성하는 방법에 대해 설명한다.
sysmaster-db-license.xml부팅이 완료된 이후에 로그인과 프로그램 사용이 가능하다. 부팅 완료는 SDM 로그에서 아래와 같은 로그를 통해 확인할 수 있다.
기본적으로 각 모듈들의 pod 내 컨테이너에 접속하여 해당 모듈의 log 파일을 볼 수 있다. SysMaster DB 모듈들은 동일하게 각 컨테이너 내 아래 경로에 로그가 적재된다.
추가로, 사용자의 편의를 위하여 로그 확인 전용 컨테이너를 생성하여 활용할 수 있다.
배포 파일 구성에 포함된 client-deployment.yaml 파일에 정의된 sysmasterdb8-client-pod 내에, 로그 확인 전용 컨테이너인 sysmasterdb8-log-container가 정의되어 있다. 사용자는 해당 컨테이너 내 로그 디렉터리 경로(/sysmaster/logs)를 통해 모든 SysMaster DB 모듈의 로그를 확인할 수 있다.
설치 파일이 위치한 디렉터리에서 아래와 같은 순서로 명령을 수행하면 SysMaster DB 가 종료된다. 이때 SysMaster DB 를 종료해도 Repository DB와 Meta DB의 데이터 파일은 유지되므로, SysMaster DB 를 다시 기동하면 이전에 저장한 데이터를 사용할 수 있다.
아래의 명령을 수행하면 모든 데이터가 삭제되고, 최초 설치 상태와 동일하게 동작한다. 단, 이전에 저장한 데이터는 사용할 수 없다.
kubectl apply -f kubernetes/initkubectl apply -f kubernetes/db[ENTRYPOINT LOG]: INFO: Attempting to start PostgreSQL server...LOG: database system is ready to accept connectionskubectl apply -f kubernetes/kafkakubectl apply -f kubernetes/sysmasterStarted SdmApplication in ... seconds (JVM running for ...)/sysmaster/logskubectl delete -f kubernetes/sysmasterkubectl delete -f kubernetes/kafkakubectl delete -f kubernetes/dbkubectl delete -f kubernetes/initSysmasterDB에서 제공하는 분석 기능에 대해 안내한다.
Group, 사용자 등 각종 설정 메뉴에 대해 안내한다.
"Instance Monitoring" 서비스에서 제공하는 모니터링 대상 Component에 대한 간략한 설명이다.
본 안내서는 SysMasterDB 8.3를 실무에 적용하거나 운용하는 데 필요한 모든 사항을 포함하지 않는다.
High Availability Monitoring - TSC 구성 및 네트워크 현황, 복구 현황을 실시간 모니터링할 수 있다.
관제 인스턴스 DB가 다운 상태일 경우 마지막에 Normal 상태였던 시간을 표시한다.
Agent Disconnected 상태일 경우 위와 같이 표시되며 카드뷰 마지막에 정렬된다.

현재 서비스에 대한 정보를 확인할 수 있다.
모니터링 그룹 변경
시스마스터 각 메뉴에서 모니터링 할 그룹을 설정 할 수 있다.
로그아웃
SQL Text
SQL 구문
Child Number
SQL의 Child Number
SQL ID
SQL ID

[New Tab]에서 [Add Layout] 버튼을 클릭하여 Layout을 신규 생성할 수 있다.
레이아웃 생성은 다음과 같은 프로세스로 진행된다.
Layout Name
레이아웃 이름을 입력한다. 해당 이름이 Instance Monitoring 페이지에 노출된다.
Chart Index
사용자가 실시간으로 모니터링할 지표를 선택한다.
Instance Monitoring에서 제공되는 모니터링 지표 목록은 를 참고한다.
Selected Item
사용자가 선택한 지표 목록을 확인하고, 각 지표 차트 옵션을 설정한다.
Summary
사용자가 선택한 지표 목록이 반영된 레이아웃 예시를 확인할 수 있다.
Add
Add 버튼을 클릭하여 사용자가 직접 정의한 Layout을 생성, 해당 Layout Tab에 적용한다.
모든 사용자는 하나 이상의 그룹에 소속될 수 있다. 그룹에 소속되면 해당 그룹의 역할(Role)을 부여 받게 된다.
ex) admin, user사용자는 한 그룹 당 한 개의 역할을 가질 수 있으며, 여러 개의 그룹에 속한 경우 그룹마다 각각 다른 역할을 가질 수 있다.
그룹에는 인스턴스가 할당된다. 그룹원들은 그룹에 할당된 인스턴스에 대한 권한(Configurable Privileges)을 할당받을 수 있다.
Configurable privileges는 각 유저별 권한을 의미한다.
기능별, 인스턴스별로 존재하며, 어드민이나 슈퍼 어드민이 직접 수정이 가능하다.
기본값은 전부 권한 없음이다.
인스턴스가 명시된 privilege는 해당 인스턴스에서만 기능을 사용할 수 있고, 인스턴스가 명시되지 않은 privilege는 인스턴스와 무관하게 모든 페이지에서 기능을 사용할 수 있다.
변경사항이 생기면 save 버튼이 활성화 되며 save을 눌러 저장을 해야 변경사항이 저장된다. cancel을 누르게 되면 기존 설정값으로 돌아간다.
다음은 privilege별 설명이다.
글로벌 내비게이션 바에서 [Realtime] > [Usage Monitoring] > [Undo Usage] 를 클릭하면 Undo Usage 화면이 열린다.
Undo Usage 페이지에서는 Undo 사용량 정보를 보여준다. 현재 트랜잭션을 발생시킨 후 Commit 이나 Rollback을 통하여 트랜잭션을 종료시키지 않고 있는 세션들의 정보를 확인할 수 있다.
다음은 Session Undo Usage 페이지에서 제공하는 항목에 대한 설명이다.
Performance Analysis에서는 성능과 관련된 각종 지표들을 확인할 수 있다.
Overall 메뉴에서 장기간 그래프를 통해 추이를 확인 한 후, Time Slice 기능을 통해 특정 시점에서 발생한 모든 지표 정보를 복합적으로 확인 할 수 있다.
Analysis의 하위 메뉴별로 조회 기간을 설정할 수 있다. 화면 상단의 Time Slice 버튼을 누르면 Time Slice 생성창으로 이동한다.
Time Slice를 할 구간을 선택한다.
Time Slice로 구분할 Time Unit을 선택하고 View를 누른다.
구간 안에서 Time Unit으로 나누어진 Time Slice를 선택하면 해당 Time Slice에 대한 화면이 열린다.
Physical Reads, Hard Parse Count 등 내가 관심 있는 지표를 어떤 SQL이 가장 많이 발생시켰는지 확인 할 수 있다.
설정한 지표의 변화 추이를 Heatmap을 통해 확인하고, 더 상세히 분석하고자 하는 기간의 Performance Trend나 Top N Performance 페이지로 연계할 수 있다.
SysMaster DB 8에서 사용하는 포트 중 외부 접속을 허용해야 하는 포트들은 다음과 같다.
SysMaster DB 서버에서 허용해야 하는 포트 목록
CLIENT_PORT
관제 데이터베이스 서버에서 허용해야 하는 포트 목록
글로벌 내비게이션 바에서 [Analysis] > [History Analysis] > [Alert Event Analysis] 페이지를 클릭하면 Alert Analysis 페이지가 열린다.
Alert Event Analysis 페이지에서는 SysMaster DB 8 제품의 사용자가 설정한 알림 및 시스템 알림 규칙 대한 알림 발생 이력을 확인할 수 있다. 또한 발생한 알림에 대한 확인 여부도 확인할 수 있다.
시간 범위를 설정하여 사용자 설정 알림 발생 정보를 차트로 조회하여 볼 수 있다.
시간 범위를 설정하여 사용자 설정 알림 발생 정보를 차트로 조회하여 볼 수 있다.
User created 탭과 System 탭 차트의 특정 시간을 클릭하여 해당 시간의 알림 목록을 조회할 수 있다.
GNB 우측 상단에 있는 아이콘을 누르면 setting에 접근할 수 있다.
settings 메뉴의 좌측 상단에 있는 all groups 메뉴를 누르고 하단에 있는 create 버튼을 누르면 group을 생성할 수 있다.
All Groups는 슈퍼 어드민에게만 제공되는 메뉴이다.
그룹 생성 시 필요한 항목은 다음과 같다.
Instance Monitoring 페이지의 Instance Overview 영역에서는 현재 선택된 그룹의 인스턴스 목록과 상태에 대한 요약 정보를 확인할 수 있다.
Instance Overview 영역은 Instance Monitoring 페이지의 좌측에 사이드 패널 형태로 제공된다.
해당 영역에는 현재 선택된 그룹에 등록된 인스턴스 목록이 표출되며, 각 인스턴스별 상태에 대한 요약 정보가 제공된다.
사용자는 하나의 Layout에서 최대 5개까지 인스턴스를 동시에 선택하여 모니터링 할 수 있다.
Instance Overview 영역을 통해 확인할 수 있는 인스턴스 상태 정보는 다음과 같다.
CPU
해당 인스턴스의 실시간 CPU 사용률
Lock
해당 인스턴스의 실시간 Lock Waiter Session Count
Alert
해당 인스턴스의 실시간 미확인 알림 상태 및 개수
인스턴스 구동 상태가 DB Down 또는 Agent Disconnected인 경우에는 아래와 같이 별도의 서식으로 표기된다.
추가로, 사용자는 필요에 따라 접기 버튼을 클릭하여 Instance Overview 영역 사이드 패널을 접거나 펼칠 수 있다.
Super Admin과 Admin은 settings에서 유저를 생성할 수 있다.
User ID
유저의 ID
Group&Role
유저를 생성하기 위해서는 id 중복 체크를 필수적으로 진행해야 한다.
비밀번호는 8자 이상, 문자,숫자,특수문자를 넣어서 생성해야 한다.
본 장에서는 선택된 그룹 내의 모든 관제 데이터베이스 인스턴스를 통합 모니터링 할 수 있는 Dashboard에 대해 설명한다.
각 모니터링 중 인스턴스에 대한 실시간 상태 정보 및 지표를 제공한다.
우상단의 톱니바퀴 버튼을 눌러 Auto Refresh 주기 및 중단을 설정할 수 있다.
대시보드는 다음과 같은 주요 섹션으로 구성된다.
주요 메뉴 및 전역 내비게이션 기능 제공
DB 인스턴스들의 상태 및 인스턴스의 Alert 발생 현황을 확인하는 영역
Card View 형태로 각 인스턴스별 상태 및 CPU / Running Session등 주요 지표 제공
그룹 내 인스턴스들의 더 자세한 실시간 성능 지표를 제공하는 차트와 테이블 제공
Layout Split
Custom 영역과 Card View 영역의 크기 비율을 조정하는 버튼
드래그 혹은 클릭을 통해 Card View : Custom Area 영역을 1:2 / 2:1 / 3:0 으로 설정 가능
Super Admin 유저의 경우, Instance Info의 더보기[···] 메뉴를 통해 인스턴스 수정 페이지에 진입할 수 있다.
아래 예시 화면은 인스턴스 수정 페이지로, 기존 등록된 인스턴스 정보를 변경한 후 연결 테스트 및 적용할 수 있다.
항목별 상세 설명은 Instance 등록하기를 참고한다.
글로벌 내비게이션 바에서 [Analysis] > [History Analysis] > [Invalid Object] 페이지를 클릭하면 Invalid Object 페이지가 열린다.
Invalid Object 페이지에서는 Invalid Objects Count 데이터와 Invalid Objects 상세 정보를 확인할 수 있다.
지정한 기간 동안의 Invalid Objects Count 정보를 확인할 수 있다.
Invalid Objects Count 차트에서 특정 데이터 클릭 시 해당 데이터 카운트에 포함된 전체 Invalid Object 정보를 제공한다. 이를 통해 사용자는 각 시간대별 Invalid Object 데이터의 상세 정보를 확인할 수 있다.
다음은 Invalid Objects 화면에서 제공하는 항목에 대한 설명이다.
Usage Analysis에서는 지정한 기간 동안의 변화량을 확인할 수 있다.
지정한 기간 동안의 테이블스페이스 이름별 크기의 변화량을 확인할 수 있다.
지정한 기간 동안의 파일 시스템 이름별 서버에 마운트된 크기의 변화량을 확인할 수 있다.
지정한 기간 동안의 세그먼트 이름별 크기의 변화량을 확인할 수 있다.
지정한 기간 동안 시간 단위의 Temp 크기의 변화량을 확인할 수 있다.
지정한 기간 동안 시간 단위의 Undo 크기의 변화량을 확인할 수 있다.
Total Session Count 화면에서는 All Session Count에서 선택한 총 세션의 갯수를 확인할 수 있다.
다음은 Total Session Count 화면에서 제공하는 항목에 대한 설명이다.
User Name
글로벌 내비게이션 바에서 [Realtime] > [Lock Monitoring] 메뉴를 클릭하면 Lock Monitoring 화면이 열린다.
Lock Monitoring 화면에서는 세션간의 Lock 정보를 Tree 형식으로 보여준다. 따라서 Lock을 점유하고 있는 Holder Session과 Lock을 획득하기 위해 기다리고 있는 Waiter Session을 모니터링 할 수 있다. 그리고Lock을 점유하고 있는 세션을 모니터링할 수 있으며, 특정 세션을 종료 시킬 수 있다.
다음은 Lock Tree Table 화면에서 제공하는 항목에 대한 설명이다.
본 장에서는 실시간 지표 수집을 통해 누적된 데이터의 기간 분석을할 수 있는 Analysis 메뉴에 대해 설명한다.
- 성능과 관련된 지표들을 분석 할 수 있다.
- 그간 Plan 변화, 접속 세션 수 변화, Alert 발생량 변화, Invalid Object 갯수 변화 등의 추이를 분석할 수 있다.
- Tablespace, Filesystem, Segment, Temp Tablespace, Undo Tablespace 사용량 추이를 확인할 수 있다.
Instance Monitoring 페이지의 Layout Tab 영역에서 제공되는 모니터링 지표 차트의 공통 기능에 대해 설명한다.
차트 좌상단의 지표명 우측에 표출되는 info 아이콘 위에 마우스 포인터를 올려두면, 해당 지표에 대한 Description을 확인할 수 있다.
차트 우상단의 더보기 아이콘을 클릭하면, 각 차트별로 지원되는 부가 기능 목록을 확인할 수 있다.
차트 종류에 따라 지원되는 부가 기능이 다르며, 차트별 부가 기능에 대한 설명은 을 참고한다.
차트 우상단의 확대 아이콘을 클릭하면, 별도의 모달을 통해 해당 차트를 확대하여 확인할 수 있다.
글로벌 내비게이션 바에서 [Realtime] > [Usage Monitoring] > [Temp Usage] 를 클릭하면 Temp Usage 페이지가 열린다.
Temp Usage 페이지에서는 Session Temp 사용량 정보를 보여준다. 효율적인 실행 계획 또는 잘못 쓰여진 SQL Statement로 인하여 과도하게 Temporary Tablespace 영역을 사용하고 있는 세션을 모니터링할 수 있다.
다음은 Session Temp Usage 페이지에서 제공하는 항목에 대한 설명이다.
글로벌 내비게이션 바에서 [Analysis] > [Performance Analysis] > [Top N Performance] 메뉴를 클릭하면 Top N Performance 화면이 열린다.
Top N Performance 화면에서는 검색 기간 동안에 상위에 존재하는 SQL에 대해 확인할 수 있다.
이때 Category와 Item을 설정하면 선택한 Item에 대해 Value를 확인할 수 있다. 또한 Category에서 값을 선택하여 더블 클릭을 하면 SQL에 대한 정보를 확인할 수 있고, SQL을 선택하여 더블 클릭하면 SQL Detail 화면으로 연계된다.
다음은 탭 화면의 각 영역에 대한 설명이다.
데이터 집계 기준으로 'Machine', 'Module', 'Program', 'Username', 'OS user'가 있으며 'SQL' 선택 시 집계 기준을 설정하지 않는다.
집계 항목으로 'Logical Reads', 'Physical Reads', 'Redo Entries', 'Execute Count' 등이 있다.
선택한 기간 하루 동안의 시간 단위 차트를 제공한다. 이때 Heatmap Trend 화면 상단의 [OS], [STAT], [WAIT(TIME)], [WAIT(COUNT)], [SESSIONS] 버튼을 사용해서 각 지표의 사용량에 대한 Overview를 확인할 수 있다.
OS 관련 항목('CPU Idle', 'CPU Sys', 'Memory Usage' 등)의 사용량에 대한 시간 단위 차트를 조회한다.
이때 지표 선택 버튼 영역 오른쪽의 콤보박스를 사용하여 조회할 리소스를 변경할 수 있다.
Stat 관련 항목('Logical Reads', 'Physical Reads', 'Execute Count' 등)의 사용량에 대한 시간 단위 차트를 조회한다.
이때 지표 선택 버튼 영역 오른쪽의 콤보박스를 사용하여 조회할 리소스를 변경할 수 있다.
CPU / Memory 파이 차트에 마우스를 호버하여 상세 정보를 확인할 수 있다.
Lock Waiter: 인스턴스가 락을 기다리고 있는 세션 갯수를 표시한다.
Tablespace: 사용량이 90% 이상인 테이블스페이스 갯수를 표시한다. 마우스 호버시 사용룰 내림차순으로 10개 테이블스페이스에 대해 사용 현황을 표시한다.
Instance Monitoring 페이지의 Layout Tab 영역에서 제공되는 기본 기능에 대해 설명한다.
사용자 편의를 위해, Instance Monitoring 페이지에서는 Default Layout을 제공한다.
Default Layout에 포함된 모니터링 지표 목록은 다음과 같다.
[System] CPU Usage
[Session] Session Count (Running, Active, Inactive)
Daily Hourly Chart에서 선택한 한 시간 동안의 분 단위 차트를 확인할 수 있다. 이때 해당 차트는 Daily Hourly Chart의 아래에 위치한다.
Minute Chart bar를 클릭하면 원하는 메뉴로 이동이 가능하다.
각 버튼에 대한 설명은 다음과 같다.
SysMaster DB 에서 관제 데이터베이스 등록 시 유저 정보를 입력하게 된다. 기존에 생성된 유저를 사용할 수 있고, 새로운 유저를 생성해 사용할 수도 있다. 이때 유저에게 필요한 권한은 CONNECT, ALTER SYSTEM, SELECT_CATALOG_ROLE이다. 유저 생성 및 권한 부여는 SYS 계정에서 아래 DDL 및 DCL 문을 사용한다.
추가로 TPR Report, ASH Report 기능을 사용하려면 아래 DCL 문을 사용하여 관련 권한을 부여해야 한다.
TPM Agent에서 Tibero로부터 정보를 수집하기 위해서는 libtpmstat 라이브러리가 필요하다. 관제 데이터베이스에 279651 패치가 적용되어 libtpmstat 라이브러리가 있는 경우에는 Tibero 환경 변수 설정 과정을 통해 해당 라이브러리를 사용할 수 있다.
만약 관제 데이터베이스에 libtpmstat 라이브러리가 없는 경우에는 해당 데이터베이스에 맞는 라이브러리를 추가로 배포해야 한다. 이때 배포된 libtpmstat.so 파일을 TPM Agent 디렉터리로 이동시킨 후 TPM Agent 라이브러리 경로 설정을 통해 해당 라이브러리를 사용할 수 있다.
글로벌 내비게이션 바에서 [Realtime] > [Usage Monitoring] > [File Usage] 를 클릭하면 File Usage 페이지가 열린다.
File Usage 페이지에서는 데이터 파일 사용량 정보를 보여준다. File Usage 는 관제 DB 에 대한 부하를 최소화하기 위해 한시간마다 수집되는데, 우 상단 [Collect] 버튼 클릭시 최신 File Usage 정보를 수집하여 보여준다.
모니터링 대상 DB의 테이블스페이스의 데이터 파일 I/O 사용량 정보를 확인할 수 있다.
Alert Alarm 항목에서는 아직 Confirm 처리되지 않은 Alert들의 리스트를 나타낸다. Alert는 유저가 직접 생성한 기준에 따라 발생한 User-created 카테고리와 자동으로 설정되어 전체 인스턴스에 대해서 발생하는 System 카테고리로 나뉘어져 있다.
각 Alert에 대해 Confirm 처리를 하거나, 우상단에 Confirm All 버튼을 눌러야 Alert Event를 제거할 수 있다.
Group : Alert 등록된 그룹명
Instance: Alert가 발생한 인스턴스 명
Total Session Info 화면에서는 All Session Count에서 선택한 세션의 정보를 확인할 수 있다.
다음은 Total Session Info 화면에서 제공하는 항목에 대한 설명이다.
SysMasterDB 8에 접속하기 위해서는 웹 브라우저에 접속한 후 로그인을 해야 한다.
로그인 화면에서 사용자 ID와 패스워드를 입력한 후 [SIGN IN] 버튼을 클릭한다. 이때 로그인에 성공하면 그룹 선택 화면으로 이동한다.
SysMaster DB 8 설치 시 기본적으로 관리자 권한을 가지는 계정을 생성한다. 이때 기본으로 제공되는 관리자 계정의 아이디와 패스워드는 모두 admin이다.
만약 로그인에 실패할 경우 "Login Failed" 다이얼로그를 통해 아이디와 비밀번호를 확인하라는 메시지를 출력하고, 5번 연속 실패할 경우 10분 뒤 로그인하라는 메시지를 출력한다.
SysMaster DB 8.3의 공식지원 플랫폼 및 운영체제는 다음과 같다.
브라우저에서 SysMaster DB UI에 접속하기 위한 포트
80
SysMaster DB UI 접속을 위해 브라우저를 실행하는 사용자 PC
COLLECTOR_PORT
TPM Agent가 SysMaster DB 로 수집 정보를 보내기 위해 연결하는 포트
8292
관제 데이터베이스 서버
REPODB_PORT
REPODB에 접속하기 위한 포트 (사용자가 REPODB를 직접 조회하기 위한 용도로 SysMaster DB 동작과는 무관)
15432
REPODB에 접속할 사용자 PC
METADB_PORT
METADB에 접속하기 위한 포트 (사용자가 METADB를 직접 조회하기 위한 용도로 SysMaster DB 동작과는 무관)
25432
METADB에 접속할 사용자 PC
티베로 리스너 포트
SysMaster DB 서버에서 관제 데이터베이스에 연결하는 포트
8629
SysMaster DB 서버













사용자 이름
Running Session
Running Session 수


Data Collection
Table Space Usage와 File Usage에서 선택된 인스턴스의 정보를 collect 할 수 있는 권한을 가지게 된다.
Kill Session
선택된 인스턴스의 세션을 강제로 종료시킬 수 있는 권한을 가지게 된다.
Data Export
CSV 파일을 다운로드 할 수 있는 권한을 가지게 된다.
Custom


Dashboard에서 Layout 수정할 수 있는 권한과, Instance Monitoring에서 Layout 생성/수정/삭제 할 수 있는 권한을 가지게 된다.
CREATE USER [username] IDENTIFIED BY [password];
GRANT CONNECT, ALTER SYSTEM, SELECT_CATALOG_ROLE TO [username];GRANT EXECUTE ON SYS.DBMS_TPR TO [username];
GRANT EXECUTE ON UTL_TPR TO [username];Alert Trigger
알람 트리거 이름
Instance
알림이 발생한 인스턴스 이름
Confirm
사용자 확인 여부
User Comment
알림 확인 시 사용자가 작성한 메시지 내용
Alert Time
알림이 발생한 시각
Alert Name
알림 이름
Alert Level
알림 레벨 (INFO, WARNING, ERROR)
그룹에서 해당 유저의 역할(Role)을 지정한다.
Description
그룹에 대한 설명을 작성한다.
Group Name
생성할 그룹의 이름을 지정한다.
Instance
그룹에 할당될 인스턴스를 지정한다.
Member&Name
그룹에 넣을 유저를 id기준으로 지정한다.
Role
Invalid Object의 Sub Object 이름
Object Type
Invalid Object의 타입
Status
Invalid Object의 상태 (INVALID)
Last DDL Time
Invalid Object의 최근 DDL이 실행된 시간
Log Time
Invalid Object 데이터의 수집 시각
Owner
Invalid Object의 소유자
Object Name
Invalid Object의 Object 이름
Sub Object Name
Instance
SysMaster DB에 등록된 해당 인스턴스 이름
SID
세션의 SID
Serial#
세션의 시리얼 번호
Elapsed Time
세션의 Running 시간
Status
세션의 Holder 및 Waiter 정보
Session Status
세션의 상태
Username
세션 사용자 이름
Module
세션의 모듈 이름
Program
세션의 프로그램 이름
Machine
세션의 호스트 이름
IP
User 접속 IP 주소
SQL ID
세션이 수행 중인 SQL의 SQL ID
Child Number
세션이 수행 중인 SQL Plan의 Child Number 값
Wait Event
세션의 Wait Event 이름
Type
Lock 타입
ID1
Lock ID1
ID2
Lock ID2
Mode
Holder가 점유한 Lock 모드 (Waiter는 항상 0)
Request
Waiter가 요청한 Lock 모드 (Holder는 항상 0)
Wait Time
대기한 시간
Lock을 점유하고 있는 세션을 종료시켜 Lock을 해제할 수 있는 기능이다.
우선 Lock Tree Table에서 해제할 세션을 선택한 후 Lock Tree Table 화면 오른쪽 상단의 [Kill Session] 버튼을 클릭하면 Kill Session 팝업창이 열린다. 이때 해당 세션을 Kill하여 Lock을 해제할 수 있다.
Analysis의 하위 메뉴에 진입 시 공통적으로 보여지는 드롭다운 메뉴이다. 해당 드롭다운을 통해 모니터링 대상 인스턴스를 선택할 수 있다.
Analysis 메뉴들 화면 좌측 상단의 드롭다운 메뉴를 클릭한다.
Instance 드롭다운 메뉴를 클릭한다.
드롭다운이 펼쳐지면 원하는 인스턴스를 선택하고, 해당 인스턴스에 대한 모니터링 정보가 화면에 나온다.
Analysis의 하위 메뉴에서는 공통적으로 Period Selector를 제공한다. 사용자는 Period Selector를 통해 데이터 분석 대상 기간을 설정할 수 있다. 이때 Period 영역에서 기간을 설정하고, 오른쪽의 [VIEW] 버튼을 클릭하면 대상 기간의 데이터가 조회된다. 기본적으로 1시간 단위로 되어 있고 만약 특정한 기간이 필요하다면, Custom으로 하여 원하는 기간 구간에서 조회가 가능하다.
기본적으로 차트 데이터의 단위는 분, 시, 일을 지원하며 데이터의 개수 120개를 기준으로 단위가 변한다.
예시 1: 검색 범위 120분(2시간) 이하는 분 단위 데이터로 조회
예시 2: 검색 범위 120분(2시간) 초과 120시간(5일) 이하는 시간 단위 데이터로 조회
예시 3: 검색 범위 120시간(5일) 초과는 일 단위 데이터로 조회
사례 1: 최소 검색 단위 [분], 차트 데이터는 기본 규칙을 따름
Performance Trend Alert Analysis
사례 2: 최소 검색 단위 [시], 차트 데이터는 모두 시간 단위 제공
Invalid Object Tablespace Usage Filesystem Usage Temp Usage Undo Usage
사례 3: 최소 검색 단위 [일], 차트 데이터는 모두 시간 단위 제공
Heatmap Trend
예외 페이지: 각 페이지에서 period 관련 동작 설명
All Session Flow Segment Usage
차트 우하단 모서리를 클릭한 상태로 드래그하여 해당 차트의 크기를 조절할 수 있다.
차트 우상단의 닫기 아이콘을 클릭하면, 현재 레이아웃에서 해당 차트를 제거할 수 있다.
일부 차트 종류에서는 실시간 모니터링 중 사용자의 편의를 위해 다른 페이지로 연계해주는 기능을 제공한다.
해당 기능은 Bar, Line, Area, Stack Bar 차트에서 특정 인스턴스 그래프 클릭 시 사용할 수 있으며, 이동 가능한 페이지는 아래와 같다.
Realtime > Session Monitoring
Analysis > Performance Trend
Analysis > Top N Performance
Analysis > Changed Plan Analysis
Settings > Create Alert



세션의 SID
Serial#
세션의 시리얼 번호
User
세션 사용자 이름
Program
세션의 프로그램 이름
Module
세션의 모듈 이름
Tablespace
사용 중인 Temp 테이블스페이스 이름
Used/Total Size
사용 중인 Temp 크기 현황
Extents
Extent 수
SID
Category와 Item 선택을 통해 모니터링 하고자 하는 기간에서의 성능 지표를 확인할 수 있다. 이때 영역 오른쪽 상단의 콤보박스를 통해 SQL Category를 제외한 Category에 대해 정렬 리스트의 개수(ALL / Top 20 / Top 30 / Top 50)를 지정할 수 있다.
다음은 Category / Module 영역에서 제공하는 항목에 대한 설명이다.
Module
Category에서 선택한 값에 대한 정보
– Module : 모듈 이름 – Program : 프로그램 이름 – Username : 데이터베이스 사용자 이름 – OS user : OS 사용자 이름 – Machine : 관제 DB hostname
Value
선택한 기준(Category, Item)에 대한 총합
Ratio (%)
Category / Module에서 발생한 SQL 중 Item(Logical Reads) 값(Value)이 높은 순서대로 출력한다. 이 때 해당 SQL을 더블 클릭하면 SQL Detail 화면으로 넘어간다.
다음은 MODULE / SQL 영역에서 제공하는 항목에 대한 설명이다.
SQL ID | Child Number
SQL ID와 SQL의 Child Number
SQL Text
SQL 구문
Value
Wait Time 관련 항목('WE_JC_BUF_DISK_READ_TIME', 'WE_BUF_FREE_TIME' 등)의 사용량에 대 한 시간 단위 차트를 조회한다.
이때 지표 선택 버튼 영역 오른쪽의 콤보박스를 사용하여 조회할 리소스를 변경할 수 있다.
Wait Count 관련 항목('WE_JC_BUF_DISK_READ_COUNT', 'WE_BUF_FREE_COUNT' 등)의 사용량 에 대한 시간 단위 차트를 조회한다.
이때 지표 선택 버튼 영역 오른쪽의 콤보박스를 사용하여 조회할 리소스를 변경할 수 있다.
Sessions 관련 항목('Active Session', 'Lock Waiter Session')의 사용량에 대한 시간 단위 차트를 조회한다.
이때 지표 선택 버튼 영역 오른쪽의 콤보박스를 사용하여 조회할 리소스를 변경할 수 있다.
관제 인스턴스 DB가 다운 상태일 경우 마지막에 Normal 상태였던 시간을 표시한다.
Agent Disconnected 상태일 경우 위와 같이 표시되며 카드뷰 마지막에 정렬된다.

[Session] Lock Waiter Session Count
[System] TPS
[Stat] Buffer Cache Hit
[System] TSM Usage (Total)
[System] PGA Usage (Total)
[Stat] Redo Log Size
[Stat] Physical Reads
[Stat] Logical Reads
[Stat] Hard Parse Count
Layout Tab 영역 우상단의 설정 아이콘 클릭 시, Auto Refresh 여부와 초(sec) 단위 간격을 사용자가 직접 설정할 수 있다.
Layout Tab 영역 상단 탭 추가 아이콘 클릭 시, 새로운 Layout Tab이 추가된다.
사용자는 새 탭에 기존 Layout 또는 직접 생성한 새 Layout을 적용할 수 있다.
Layout Tab 영역 상단 Save 버튼 클릭 시, 현재 탭에 적용된 Layout 변경 상태가 저장된다.
사용자가 생성한 Layout에 한해 해당 기능을 사용할 수 있으며, Custom 권한이 없는 일반 사용자는 해당 기능을 사용할 수 없다.
Default Layout의 경우, Save 기능이 제공되지 않으므로 해당 버튼이 다음과 같이 비활성화된다.
Layout Tab 영역 상단 Cancel 버튼 클릭 시, 현재 탭에 적용된 Layout을 기존 상태(최근 저장된 상태)로 되돌린다. 이 때, 변경된 사항은 저장되지 않는다.
Layout Tab 영역 상단의 인스턴스 목록에서 특정 인스턴스 이름 클릭 시, 해당 인스턴스가 현재 Layout Tab에서 비활성화된다. 해당 인스턴스 이름을 한 번 더 클릭하면, 다시 해당 인스턴스 그래프가 차트에 표출된다.

Analysis Performance Trend 메뉴의 메인 화면으로 이동한다. 해당 메뉴에 대한 자세한 내용은 를 참고한다.
Top N
Top N Performance 메뉴의 메인 화면으로 이동한다. 해당 메뉴에 대한 자 세한 내용은 를 참고한다.
Performance Trend
Tablespace Name
테이블스페이스 이름
Name
파일 경로를 포함한 파일명
Physical Reads
Physical Read 횟수
Physical Writes
Physical Write 횟수
Physical Block Reads
Physical Block Read 횟수
Physical Block Writes
Physical Block Write 횟수
Single Block Reads
Single Block Read 횟수
Free/Total Size
사용 가능 File 공간 크기 현황
Used/Total Size
사용중인 File 공간 크기 현황
Total/Auto Extend Limit Size
File 자동 확장 최대 증가 크기 현황
Auto Extend
File 자동 확장 여부
Alert Item: Alert 대상 지표
Threshold: 설정한 Alert 발생 기준
Instance: Alert가 발생한 인스턴스 명
Alert Trigger: System Alert가 발생한 원인을 나타낸다.
하단에 Go to Alert Events History 버튼을 클릭하여 Alert 이력을 확인 할 수 있다.
OS User
OS 이름
Machine
연결된 세션의 호스트 이름
Terminal
연결된 세션의 터미널(TTY) 정보
Program
세션의 프로그램 이름
Module
dbms_application_info.set_module로 지정된 모듈의 이름
Type
세션의 타입
WTHR : Working thread
CTHR : Control thread
LGWR : Log writing process
CKPT : Checkpoint process
Logon Time
세션의 로그온 시간
User Name
사용자 이름
Docker-compose
v2.40.2 이상
Podman
v4.4.1 이상, Linux Kernel 4.18을 사용하는 Linux Red Hat Enterprise Linux 8 이상부터 지원.
Podman-compose
v1.0.6 이상
Kubernetes
v1.17 이상
관제 데이터베이스
Tibero 6 FixSet06 이상 Tibero 7
[참고] SysMasterDB의 Tibero 관제 연동은 Tibero 버전명뿐 아니라 서버 바이너리의 빌드 형상과 연동 라이브러리 간 호환성을 기준으로 한다. 동일한 Tibero 버전이라도 빌드 시점 및 적용 패치 내역에 따라 연동 라이브러리와 호환되지 않을 수 있다. 특히 2022년 이전 빌드 바이너리는 정상 관제를 보장하지 않으며, 기본 지원 대상에서 제외된다.
관제 데이터베이스 운영 체제
Linux:
CentOS 7 (64-bit)
Red Hat Enterprise Linux 7 ~ 10 (64-bit)
Oracle Linux 8 ~ 10 (64-bit)
SysMaster DB 8.3를 설치하기 위해 필요한 하드웨어 및 소프트웨어의 요구 사항은 다음과 같다.
CPU
8 Core
RAM
32 GB
저장 공간
SysMaster DB 8.3의 관제 데이터베이스 대상 권장 패치는 다음과 같다.
240373
Program 이 PE_SLAVE 인 Session 에서 OS User 와 Machine 정보 누락 개선
[참고] 해당 패치가 없다면 Program 이 PE_SLAVE 인 Session 에서 OS User 와 Machine 정보가 누락된다.
276404
티베로의 global view 조회 시 수행되는 내부 쿼리에 대해 수행 시마다 physical plan을 새로 생성하는 문제 개선
[참고] SysMaster DB 8에서는 Lock 정보 수집을 위해 global view를 매초 조회한다. 해당 패치가 없는 경우 매초 특정 SQL에 대해 physical plan을 생성하여 [Analysis] > [Plan Analysis] 등에서 해당 SQL에 대해 조회 시 응답 없음 현상이 발생할 수 있다.
279651f
운영체제
Linux:
CentOS 7 (64-bit)
Red Hat Enterprise Linux 7 ~ 9 (64-bit)
Oracle Linux Server release 9.4
Rocky Linux release 8 ~ 9 (64-bit)
Windows:
Windows 10 (64-bit)
Windows Server 2022 (64-bit)
아래(Docker 및 Podman) 지원 플랫폼 및 소프트웨어 요구 사항 설치를 지원하는 운영체제면 기동 가능
Docker
v28 이상
주의
Docker Compose 2.40.2 버전 미만인 경우 Docker Compose에서 원격 OCI Compose 아티팩트 설정 값 검증 미흡으로 발생하는 경로 탐색 취약점이 있다. 따라서 2.40.2 버전 이상으로 업데이트를 권고한다.
SID
세션의 SID
Serial#
세션의 시리얼 번호
User
세션 사용자 이름
Program
세션의 프로그램 이름
Module
세션의 모듈 이름
Segment ID
사용 중인 세그먼트 ID
Used/Total Size
사용 중인 Undo 크기 현황
Used Block
사용 중인 Undo Blocks
Used Rec
사용 중인 Undo Records
Recovery
Recovery 중인 크기
생성할 유저가 속할 그룹과 해당 그룹에서의 역할(Role)
Password
유저의 암호
Mail Address
유저의 이메일 주소
Phone Number
유저의 핸드폰 번호
Date Format
서비스 화면에 표시될 날짜 형식
Description
유저에 대한 설명
사용하고자 하는 엔진에 따라 도커 혹은 파드맨을 설치한다.
Docker 엔진을 사용할 경우
Docker-compose, Kubernetes 를 통해 SysMaster DB를 구동할 수 있다.
RHEL의 Podman 엔진을 사용할 경우
Podman-compose 환경을 통해 SysMaster DB를 구동할 수 있다.
아래의 주소에서 도커 엔진 설치 방법 문서를 확인한 후 운영체제에 맞는 도커 엔진을 설치한다.
설치 환경의 인터넷 연결 여부에 따른 설치 방법은 다음과 같다.
인터넷 연결이 가능한 경우
"Install using the repository" 과정에 따라 설치한다.
이때 별도의 버전을 명시하지 않고 가장 최신 버전을 설치할 것을 권장한다.
인터넷 연결이 불가능한 경우
이때 도커 엔진 설치 과정에서 최종적으로 설치되어야 하는 패키지는 docker-ce, docker-ce-cli, containerd.io, docker-compose-plugin이다.
docker version 명령을 사용하여 정상적으로 도커/ 파드맨이 설치되었는지 확인한다.
아래의 주소에서 설치 방법을 확인한 후 설치한다.
파드맨 엔진 설치 과정에서 최종적으로 설치되어야 하는 패키지는 podman, Slirp4netns, podman-plugins이다.
podman version 명령을 사용하여 정상적으로 도커/ 파드맨이 설치되었는지 확인한다.
'Docker-compose', 'Kubernetes', 'Podman-compose' 중에서 하나만 선택하여 설치한다.
Docker 설치 시 docker-compose-plugin 패키지가 함께 설치된다. Docker가 정상적으로 설치되었을 경우 docker-compose 환경을 위한 별도의 추가 설치 과정은 필요 없다.
docker compose version 명령을 사용해 정상적으로 docker compose가 설치되었는지 확인한다.
Podman-compose
모니터링 중인 그룹에 포함된 DB 인스턴스들의 상태 및 인스턴스의 Alert 발생 현황을 확인하는 영역이다.
각 인스턴스당 색상이 할당되며, TAC / TSC 클러스터일 경우 묶여서 배치된다.
Instance Overview에서는 각 인스턴스의 상태를 한눈에 확인할 수 있다. 우측 Alert 항목에 Alert 항목이 보일 경우 Normal, 이며, Agent Disconnected 혹은 DB Down일 경우 해당 상태가 우측에 표시된다.
우측 화살표 버튼을 클릭하여 Instance Overview 메뉴를 숨기거나 펼칠 수 있다.
모니터링 대상 DB의 상태에는 Normal, Agent Disconnected, Down이 있다.
Normal: DB가 기동중이며 TPM Agent와의 연결이 확인되어 지표를 수집하고 있는 상태를 나타낸다.
Agent Disconnected: DB는 기동중이나 Agent와 연결이 안되어 지표 수집이 안되는 상태를 나타낸다.
Down: DB 인스턴스가 다운 상태이거나 연결을 맺을 수 없는 상태를 나타낸다.
Super Admin의 경우 'Import 버튼'을 통해 관제 대상 할 수 있다.
인스턴스 항목 오른쪽에 각 인스턴스별 발생한 Alert 현황을 파악할 수 있으며, 해당하는 버튼 클릭시 Error / Warning Alert 발생 현황을 확인할 수 있다.
인스턴스 오버뷰에서 특정 인스턴스를 선택하여 Card View 및 Custom Area에서 해당 인스턴스에 대한 데이터만 표시하도록 설정할 수 있다.
인스턴스 선택시 Dashboard 모든 영역에서 Auto Refresh가 멈추며 모든 영역의 데이터가 선택했던 시점으로 고정된다.
각 인스턴스를 클릭해 각 메뉴로 빠르게 전환하거나, Instance Info를 통해 해당 인스턴스의 정보를 확인할 수 있다.
드롭 다운 메뉴는 두가지의 섹션으로 나뉘어져 있다
Recommend: SysMasterDB에서 추천하는 메뉴
: 해당 인스턴스에 대한 Performance Trend 메뉴로 이동한다.
: 해당 인스턴스에 대한 Instance Monitoring 메뉴로 이동한다.
: 해당 인스턴스가 TSC일 경우 해당 인스턴스에 대한 TSC Monitoring 메뉴로 이동한다.
글로벌 내비게이션 바에서 [Realtime] > [Main Monitoring] > [Server Monitoring] 을 클릭하면 Server Monitoring 페이지가 열린다.
Server Monitoring 페이지에서는 OS Level의 CPU, Memory의 System Resource 사용량과 Process의 CPU 및 Memory 사용량에 대한 정보를 보여준다. 이때 PID, User, CPU(%), Memory(%) 등 각 조건별로 필터링 기능을 제공하며 전체 프로세스가 리소스를 어느 정도 차지하고 있는지 전반적인 상태를 모니터링할 수 있다.
Server Monitoring 페이지 오른쪽 상단의 [Refresh] 버튼을 클릭하면 실시간으로 CPU 사용량을 모니터링 할 수 있다.
Server Monitoring 페이지 왼쪽 상단의 CPU 화면은 User, System 영역별 CPU 사용량과 현재 총 CPU 사용량을 차트로 보여준다.
Server Monitoring 페이지 왼쪽 하단의 Memory 화면은 전체 Memory 크기와 현재 Memory 사용량을 차트로 보여준다.
Current Process Usage 페이지은 각 프로세스의 CPU 및 Memory 리소스 사용량을 보여준다.
로그인 후 첫 화면인 Dashboard에서 import 버튼을 클릭하면 instance를 등록할 수 있다.
아래 예시 화면은 인스턴스 등록 페이지이다.
해당 페이지에서는 모니터링을 위한 인스턴스 연결 테스트 및 등록을 수행할 수 있으며, 현재 서비스에 적용된 라이선스 정보를 상단 License Info 영역을 통해 참고할 수 있다.
새로 등록한 instance는 바로 화면에 반영되지 않고, 그룹에 instance를 할당한 후에 Dashboard에서 관제가 가능하다.
Docker-compose 및 Podman-compose 환경에서 SysMaster DB 8.3를 기동, 로그 확인, 종료, 초기화하는 방법이다.
export SYSMASTERDB_HOME={SysMasterDB_Home_Path}{SysMasterDB_Home_Path}
docker-compose.yml 파일이 위치한 디렉터리 경로
export PATH=$PATH:$SYSMASTERDB_HOME지정된 경로 하위에 발급받은 라이선스 파일을 배치한다. 라이선스 파일명과 경로는 아래와 같으며, 변경 불가능하다.
라이선스 파일명
sysmaster-db-license.xml
라이선스 경로
$SYSMASTERDB_HOME/license
$SYSMASTERDB_HOME 경로 하위에 license 디렉토리가 존재하지 않는 경우, 해당 디렉토리를 직접 생성해준 후 라이선스 파일(sysmaster-db-license.xml)을 넣어주면 된다.
부팅이 완료된 이후에 로그인과 프로그램 사용이 가능하다. 부팅 완료는 SDM 로그에서 아래와 같은 로그를 통해 확인할 수 있다.
.env 파일의 로그 관련 파라미터 설정을 통해 로그가 저장될 경로를 지정할 수 있다. default 로그 경로는 ./logs이므로 docker-compose.yml 파일이 있는 디렉터리에 logs 폴더가 자동으로 생성되며, 여기서 로그 파일을 확인할 수 있다.
SysMaster DB 8.3 기동을 위한 환경 변수 및 PATH가 설정된 상태에서 아래의 명령을 수행하면 모든 서비스가 제거되고, SysMaster DB 8.3가 종료된다. 이때 SysMaster DB 8.3를 종료해도 METADB_PATH와 REPODB_PATH에 생성된 파일은 유지되므로, SysMaster DB 8.3를 다시 기동하면 종료 전과 동일하게 사용할 수 있다.
METADB_PATH와 REPODB_PATH 디렉터리를 삭제한 후 SysMaster DB 8를 다시 기동하면 최초 설치 상태와 동일하게 동작한다. 단, 이전에 저장한 데이터는 사용할 수 없다.
글로벌 내비게이션 바에서 [Analysis] > [Usage Analysis] > [Filesystem Usage] 메뉴를 클릭하면 Filesystem Usage 화면이 열린다.
이 화면에서는 지정한 기간 동안의 파일 시스템 이름별 서버에 마운트된 크기의 변화량을 확인할 수 있다.
다음은 Filesystem Usage 화면에서 제공하는 항목에 대한 설명이다.
Filesystem Usage 에서 특정 데이터 클릭 시 해당 파일 시스템의 시간별 크기 변화를 상세하게 확인할 수 있다. 이때 오른쪽의 그래프를 통해 크기 변화량을 한눈에 파악할 수 있다.
다음은 Filesystem Info 화면에서 제공하는 항목에 대한 설명이다.
글로벌 내비게이션 바에서 [Analysis] > [Usage Analysis] > [Tablespace Usage] 메뉴를 클릭하면 Tablespace Usage 화면이 열린다.
이 화면에서는 지정한 기간 동안의 테이블스페이스 이름별 크기의 변화량을 확인할 수 있다.
다음은 Tablespace Usage 화면에서 제공하는 항목에 대한 설명이다.
Tablespace Usage 에서 특정 데이터 클릭 시 해당 테이블스페이스의 시간별 크기 변화를 상세하게 확인할 수 있다. 이때 오른쪽의 그래프를 통해 크기 변화량을 한눈에 파악할 수 있다.
다음은 Tablespace Info 화면에서 제공하는 항목에 대한 설명이다.
현재 session에서 수행중인 SQL과 동일한 SQL의 과거 수행 이력 및 통계를 보여준다.
현재 session에서 수행 중인 SQL과 동일한 SQL이 과거에 수행되었던 이력을 조회하기 위하여, 원하는 기간을 선택하여 조회할 수 있다.
현재 session에서 수행 중인 SQL 전문을 보여준다.
현재 session에서 수행 중인 SQL에 대한 Plan을 확인할 수 있는 화면이다. 이때 SQL Plan을 Tree 구조로 보여준다.
현재 수행 중인 SQL과 동일한 SQL들의 과거 이력들의 통계 정보를 보여준다. Summary, execute count, physical reads, logical reads, plan history, sql trace 항목들을 보여준다.
Summary 탭 화면에서는 분석 구간 동안 stat 지표 및 wait event 리스트와 각 wait event별 wait time의 값을 확인할 수 있다.
Execute Count 탭 화면에서는 시간 단위별 Execute Count를 차트 형태로 확인할 수 있다.
Physical Reads 탭 화면에서는 시간 단위별 Physical Reads를 차트 형태로 확인할 수 있다.
Logical Reads 탭 화면에서는 1분 단위의 Logical Reads를 차트 형태로 확인할 수 있다.
Plan History 탭 화면에서는 같은 쿼리에 대해 Plan별 비교가 가능하다.
SQL Trace 탭 화면에서는 조회 기간 동안의 SQL 수행 이력(Trace 정보)을 확인할 수 있다.
CPU / Memory 파이 차트에 마우스를 호버하여 상세 정보를 확인할 수 있다.
Lock Waiter: 인스턴스가 락을 기다리고 있는 세션 갯수를 표시한다.
Running Session: 지난 1분간의 Running Session 추이를 Area 차트로 간단하게 표시하며 현재 Running Session의 갯수를 중간에 표시한다.
Tablespace: 사용량이 90% 이상인 테이블스페이스 갯수를 표시한다. 마우스 호버시 사용룰 내림차순으로 10개 테이블스페이스에 대해 사용 현황을 표시한다.
Running Session: 지난 1분간의 Running Session 추이를 Area 차트로 간단하게 표시하며 현재 Running Session의 갯수를 중간에 표시한다.
관제 인스턴스 DB가 다운 상태일 경우 마지막에 Normal 상태였던 시간을 표시한다.
Global Navigation Bar를 통해 시스마스터 각 메뉴로 이동해 기능을 사용할 수 있다.
GNB로 이동할 수 있는 메뉴는 Realtime, Analysis, , ,, 이다.
- 논리적 읽기, 물리적 읽기, 실행 횟수 등 세션 실시간 지표를 모니터링한다.
- CPU·메모리 사용량 등 OS 수준의 자원 사용 현황과 프로세스별 자원 소비를 필터 옵션과 함께 모니터링한다.
- 사용자 지정 차트 레이아웃으로 선택한 인스턴스를 실시간 모니터링한다.
- 테이블스페이스 사용량과 상태를 시간별 업데이트 및 실시간 데이터 수집으로 모니터링한다.
- 데이터베이스 파일 사용량을 자동으로 매시간 수집하며, 필요 시 실시간 업데이트도 가능하다.
- 비효율적인 쿼리나 과도한 자원 사용을 감지하기 위해 임시 테이블스페이스 사용량을 모니터링한다.
글로벌 내비게이션 바에서 [Analysis] > [Usage Analysis] > [Segment Usage] 메뉴를 클릭하면 Segment Usage 화면이 열린다.
조회하기 원하는 날짜를 선택할 수 있는 기능이 있다. 조회한 기간의 Segment usage 목록에 간단하게 사용량 증감을 보여준다.
이 화면에서는 지정한 기간 동안의 세그먼트 이름별 크기의 변화량을 확인할 수 있다.
다음은 Segment Usage 화면에서 제공하는 항목에 대한 설명이다.
"Install from a package" 과정에 따라 패키지 별 설치 파일을 별도로 배포해 설치한다.
이때 각 패키지 별로 가장 최신 버전을 설치할 것을 권장한다.
다음은 Centos 7, x86-64 기준의 설치 파일 경로 예시이다.
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
Podman-compose 는 podman 을 docker-compose 처럼 사용할 수 있게 해주는 툴이다.
Python 기반으로 만들어져 있어 pip를 사용해서 설치한다
sudo pip3 install podman-compose
정상적으로 podman-compose가 설치되었는지 확인한다.
podman-compose version
Kubernetes
아래의 주소에서 Kubernetes 설치 방법을 확인한 후 운영체제에 맞는 Kubernetes를 설치한다.
https://kubernetes.io/ko/docs/setup/production-environment/tools/
추가적으로 아래의 주소에서 Kubectl 설치 방법을 확인한 후 운영체제에 맞는 Kubectl을 설치한다.
https://kubernetes.io/ko/docs/tasks/tools/












Instance Alias
인스턴스 이름 (카드에 표시되는 정보)
IP Address
관제 대상 DB의 접속 IP
Port
관제 대상 DB의 접속 포트 번호
DB Name
관제 대상 DB의 SID
User ID
관제 대상 DB의 사용자 이름
Password
관제 대상 DB의 사용자 패스워드
TPM Agent ID
인스턴스 ID
Instance Color
인스턴스 고유 색상 (차트에 그려지는 색상)
주의
LOG_REPLICATION_DEST_N = "hostname_N:port_N {LGWR SYNC|LGWR ASYNC|ARCH ASYNC}" 의 IP:PORT와 SysMaster DB 에 Standby 인스턴스 등록할 때 사용한 IP:PORT 가 다르다면 TSC 모니터링 화면의 topology 네트워크 구성이 올바르게 보이지 않는다.








Rocky Linux 8 ~ 10 (64-bit)
ProLinux 7.5 (64-bit)
AIX 7.2 (64-bit)
[참고]
C++11 지원 컴파일러
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44) 이상
GLIBCXX_3.4.19 이상
GLIBC_2.17 이상
30 GB 이상 (수집 정보의 보관 주기(RETENTION_DAY)에 따라 일 당 50 GB 추가 필요)
웹 브라우저
Chrome (최신 버전 사용 권장)
libtpmstat 라이브러리 생성
[참고] 해당 패치가 없는 경우 libtpmstat 라이브러리를 TPM Agent 설치 시 함께 배포해야 한다. TPM Agent 8.1.3 이상은 하위 버전 패치인 279651e 이하 패치와 호환이 되지 않기에, 279651f 이상 패치가 필요하다. Tibero에 적용된 279651 패치 버전과 상관 없이, TPM Agent 빌드 시 사용한 279651 패치 버전과 라이브러리의 279651 패치 버전이 맞아야 한다.
281081
V$TEMPSEG_USAGE 뷰의 SESSION_NUMBER 컬럼 값 표기 잘못되는 문제 개선
[참고] 해당 패치가 없는 경우 [Realtime] > [Usage Monitoring] > [Temp Usage], [Analysis] > [Usage Analysis] > [Temp Usage] 메뉴에 부정확한 정보가 표출될 수 있다.
304981b
SQL Trace 정보 수집 시 machine, OS user 추가 수집
[참고] 해당 패치가 없는 경우 SQL Trace 정보에서 OS User 와 Machine 정보가 부정확하게 표출될 수 있다. 279651f 패치 선적용이 필요하며, 279651e 패치 이하 패치와는 호환되지 않는다.
307175a
SQL Trace 정보 수집 시, 이미 닫힌 세션의 경우 수집되지 않는 문제 수정
[참고] 해당 패치가 없는 경우 세션이 자주 열리고 닫히는 환경의 경우에는 SQL Trace 정보를 상당히 누락하여 수집하게 된다.
328607b
Wait count, wait time 정보 수집 시, wait event 의 wait count, time 보정 문제 수정 [참고] 해당 패치가 없는 경우 wait time과 wait count의 값이 부정확하게 표출될 수 있다.
304770a
TSC 모니터링 전용 패치 [참고] 해당 패치가 없는 경우 아래 정보들이 V$DATABASE 뷰에 없어 primary와 standby가 구분되지 않는 등 TSC 모니터링 관련 정보들이 부정확하게 보여진다.
338513a
실제 TPR 연동에 필요한 패치로, 서버 패치 없이 패키지 생성 스크립트만 실행하면 된다.
338594a
TPR 연동 중 TPR 리포트 파일이 티베로 서버에 생성되는데, 이를 삭제해주는 티베로 패키지의 버그를수정한 패치이다.
[참고] 해당 패치 없어도 TPR 연동 기능은 동작하지만 리포트 파일이 서버에 쌓여서 주기적으로 삭제가 필요하다.
리포트 파일 수동으로 삭제 방법 : 주기적으로 다음과 같이 .tpr 로 시작하는 리포트 파일 삭제.
rm -f .tpr*
149894l
해당 패치가 없는 티베로 6에서 지원하지 않는 쿼리를 TPR 스냅샷 조회시 사용하고 있어 해당 패치가 없으면 해당 패치가 없는 티베로 6에서는 조회가 되지 않는다.
250728f
Standby에서 V$INSTANCE 뷰를 조회할 수 있도록 해주는 패치. 해당 패치가 없으면 해당 인스턴스가 클러스터링이 되지 않는다.
339899a
DB 비정상 종료 상태 판단 로직 개선
[참고] 해당 패치가 없는 경우 kill -9 등 외부 요인으로 DB가 비정상 종료되었을 때, TPM Agent에서 DB 종료 여부가 정확히 판단되지 않을 수 있다.
1) OPEN_MODE에 value 추가
- READ ONLY WITH APPLY
2) PROTECTION_MODE
: Protection mode currently in effect for the database
- UNPROTECTED
- PROTECTION
- AVAILABILITY
- PERFORMANCE
3) DATABASE_ROLE
: Current role of the database
- PRIMARY
- PHYSICAL STANDBY
- LOGICAL STANDBY (TODO)
- SNAPSHOT STANDBY
- CASCADING STANDBY
4) STANDBY_BECAME_PRIMARY_TSN
: TSN at which the physical standby database became primary
5) STANDBY_BECAME_PRIMARY_DATE
: Time at which the physical standby database became primarysysmaster-db uppodman compose -f podman-compose.yml up -dStarted SdmApplication in ... seconds (JVM running for ...)sysmaster-db downsysmaster-db
sysmaster-db-{version}.tar
meta.conf
repo.conf
docker-compose.yml
podman-compose.yml
.env
sysmaster-db-patch-{version}.tar
patch
license
+-- oss_license
|-- font_licenses.md
|-- OSS_LICENSES.md
|-- THIRD-PARTY-NOTICES.txt
|-- (and other open-source license files)sysmaster-db-{version}.tar
kubernetes
+-- init
|-- 0.namespace.yaml
|-- configmap.yaml
|-- pvc.yaml
|-- service.yaml
+-- db
|-- metadb-deployment.yaml
|-- repodb-deployment.yaml
+-- kafka
|-- kafka.yaml
+-- sysmaster
|-- analyzer-deployment.yaml
|-- client-deployment.yaml
|-- collector-deployment.yaml
|-- sdm-deployment.yaml
|-- tibero-master-deployment.yaml
sysmaster-db-patch-{version}.tar
patch
license
+-- oss_license
|-- font_licenses.md
|-- OSS_LICENSES.md
|-- THIRD-PARTY-NOTICES.txt
|-- (and other open-source license files)jdk8
+-- aix7
|-- ibm-semeru-open-jdk_ppc64_aix_8u382b05_openj9-0.40.0.tar
+-- centos7
|-- OpenJDK8U-jdk_x64_linux_8u342b07.tar.gz
lib
+-- aix7
|-- libJNITpmStat.so
+-- centos7
|-- libJNITpmStat.so
application.yml
set.sh
tpmagent.jar
tpmctl.sh
tryrun.sh전체
: Alert 를 생성 할 수 있다.
: 모니터링 DB 인스턴스 및 장비에 관한 상세 정보를 제공한다.



주의
방화벽 설정 변경 등의 이유로 TPM Agent 데이터 수집 전송이 멈췄을 경우 Normal 상태에서 아무런 지표가 보이지 않는 현상이 있을 수 있다. 따라서 Normal 상태인데 실시간 지표가 보이지 않는다면, 관제 DB 머신과 TPM Agent 로그를 확인해 볼 필요가 있다.

Page Out
Page Out 발생한 횟수
Memory(%)
프로세스 레벨의 Memory 사용률
Time
기동 후부터 현재까지 CPU를 사용한 시간
Command
프로세스의 OS Command
CPU Count
CPU 코어 수
Run Queue
현재 Run Queue 값
Blocked Queue
현재 Blocked Queue 값
Memory
총 메모리
Used
사용 중인 메모리
Page In
PID
프로세스의 OS PID 값
User
OS 사용자 이름
CPU(%)


Page In 발생한 횟수
프로세스 레벨의 CPU 사용률
Later Free/Total Size
이후 시점의 여유 공간 현황
Earlier Used/Total Size
이전 시점의 사용량 현황
Later Total/Total Size
이후 시점의 사용량 현황
Mounted On
마운트 영역 이름
FileSystem Name
파일 시스템 이름
Earlier Time
이전 시점
Later Time
이후 시점
Earlier Free/Total Size
Log Time
수집 시간
Used
사용량
Free
이전 시점의 여유 공간 현황
사용 가능한 양
Free
사용 가능한 양
Tablespace Name
테이블스페이스 이름
Contents
테이블스페이스에 저장하는 데이터 종류
TEMPORARY
PERMANENT
UNDO
Earlier Time
이전 시점
Later Time
이후 시점
Earlier Free/Total Size
이전 시점의 여유 공간 현황
Later Free/Total Size
이후 시점의 여유 공간 현황
Earlier Used/Total Size
이전 시점의 사용량 현황
Later Total/Total Size
이후 시점의 사용량 현황
Log Time
수집 시간
Tablespace Name
테이블스페이스 이름
Used


사용량
Statistics
Statistics 지표 확인
Wait Class
분석 구간 동안의 wait class 목록과 각 wait class별 wait time의 값을 확인
Wait Event
Wait class에서 선택한 항목에 대한 상세 내역을 확인
LARC : Log archive
AGENT : Sequence process
MTHR : Monitoring process
DBWR : Datablock writing process
LNW : Log network writing process
Undo Usage - 트랜잭션이 완료되지 않은 세션의 Undo 사용량을 모니터링한다.
트리 뷰로 세션 잠금(lock) 정보를 모니터링하고, 필요 시 차단된 세션을 종료할 수 있다.
TSC Monitoring - TSC 클러스터 토폴로지를 시각화하고, 데이터베이스 역할·상태·TSN 세부 정보를 모니터링한다.
Performance Trend - 그래프와 Time Slice 기능을 사용해 장기적인 성능 추세를 분석한다.
Top N Performance - 높은 자원 사용의 주요 원인이 되는 상위 SQL을 분석한다.
Heatmap Trend - Heatmap과 드릴다운 분석으로 시간대별 자원 사용 현황을 시각화한다.
Changed Plan Analysis - 지정한 기간 동안의 SQL 실행 계획(SQL Plan) 변화를 비교·분석한다.
All Session Flow - 세션 접속 추이와 실시간 세션 상태를 모니터링한다.
Search SQL Text- Hard Parse 이벤트를 발생시킨 SQL 문을 추적한다.
Alert Analysis - 시스템 및 사용자 정의 알림(Alerts) 이력을 추적한다.
Invalid Object - 유효하지 않은 데이터베이스 객체의 개수와 세부 정보를 추적한다.
Tablespace Usage - 테이블스페이스 크기 변화를 시간에 따라 추적한다.
Filesystem Usage - 서버의 파일시스템 크기 변화를 추적한다.
Segment Usage - 지정한 기간 동안 세그먼트 크기 변화를 추적한다.
Temp Usage - 임시 테이블스페이스 크기 변화를 시간별로 모니터링한다.
Undo Usage - Undo 테이블스페이스 크기 변화를 시간별로 추적한다.
TPR Report - 인스턴스 또는 클러스터 단위의 성능 보고서를 생성·분석한다.
ASH Report - 활성 세션 분석을 위한 ASH 보고서를 생성·조회한다.
Earlier Time
이전 시점
Later Time
이후 시점
Earlier Size
이전 시점의 크기
Later Size
이후 시점의 크기
Increment
Segment Usage Header에는 데이터 조회를 위한 필터링을 선택할 수 있는 기능이 있다.
Order by 우측의 드롭박스를 이용해 원하는 column으로 정렬할 수 있다.
그 오른쪽의 드롭박스를 이용해 사용자가 보기를 원하는 top 개수를 설정할 수 있다.
Segment Usage 에서 특정 데이터 클릭 시 해당 세그먼트의 일자별 크기 변화를 상세하게 확인할 수 있다. 이때 오른쪽의 그래프를 통해 크기 변화량을 한눈에 파악할 수 있다.
다음은 Segment Info 화면에서 제공하는 항목에 대한 설명이다.
Log Time
수집 시간
Partition Count
파티션 수
Size
각 항목별 사용 비율
SQL별 선택한 기준(Category, Item)에 대한 값
Ratio(%)
SQL별 비율
application.yml 파일 설정 완료 후 아래와 같은 순서로 TPM Agent를 환경을 설정한다.
ulimit -c unlimited. set.shset.sh 스크립트 내용
if [ -n "$JAVA_HOME" ] && [ -x "$JAVA_HOME/bin/java" ]; then
TARGET="$JAVA_HOME/bin/tpmagent"
# 하드링크 시도, 실패하면 복사
if ln -f "$JAVA_HOME/bin/java" "$TARGET" 2>/dev/null; then
echo "Hardlink created: $TARGET"
elif cp -p "$JAVA_HOME/bin/java" "$TARGET"; then
echo "Copied binary to: $TARGET"
else
echo "WARNING: Failed to create $TARGET"
echo " This may be a permission issue. Please check write access to $JAVA_HOME/bin."
echo " You can start TPM Agent, but in 'top'/'topas', process name will appear as java."
fi
# 실행 가능 확인
if [ -x "$TARGET" ]; then
echo "Installed $TARGET"
fi
else
echo "ERROR: JAVA_HOME not set or java not found in \$JAVA_HOME/bin"
fi
# 사용자 환경변수 설정
export TPMAGENT_HOME={TPM_Agent_Home_Path}
export PATH=$TPMAGENT_HOME:$PATH
export LD_LIBRARY_PATH=$TPMAGENT_HOME:$LD_LIBRARY_PATH
# 기존 실행 중이던 Agent가 있다면, 종료 후 실행
export BOOT_WITH_AUTO_DOWN_CLEAN=true
export ENABLE_DEBUG=false
export ENABLE_GC_LOG=false
# Agent 의 java heap 메모리 설정. 2000 session 기준 1000m. 이후 1000 session 마다 200m 추가 권장
export JAVA_MIN_HEAP_SIZE=1000m
export JAVA_MAX_HEAP_SIZE=1000m{TPM_Agent_Home_Path}
"java_tpmagent_dist_{version}.tar.gz" 압축 파일 해제 디렉터리 경로
export TB_HOME={Monitoring_DB_Path}
export TB_SID={Monitoring_DB_SID}
export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib
export PATH=$PATH:$TB_HOME/bin:$TB_HOME/client/bintpmctl.sh 명령어는 아래와 같으며, help로 터미널에서 사용법 확인이 가능하다.
Java TPM Agent에서 libtpmstat.so를 사용하기 위하여 필요한 라이브러리이다.
Tibero Down 이후 바로 Tibero Boot를 위해서 TPM Agent Down이 필요하다. TPM Agent가 참조하고 있는 Tibero Shared Memory를 해제해야 하기 때문이다.
현재 모니터링 중인 그룹 내 인스턴스들의 각종 지표를 확인할 수 있다.
커스터마이징을 통해 시스마스터에서 지원하는 모든 실시간 차트와 세션, 락 모니터링 테이블을 원하는 위치와 크기로 배치할 수 있다.
차트를 클릭할 시 원하는 화면으로 이동이 가능하다.
그룹 내 모든 인스턴스에서 발생하는 SQL 수행의 응답 시간 (Response Time)을 히트맵 형태로 표시한다.
Y축은 응답 시간이며, 히트맵의 색깔은 해당 응답 시간에 해당하는 SQL의 숫자를 나타낸다.
더보기 메뉴를 클릭하여 Y축 Time Range를 설정하고 저장 할 수 있다.
Starting Point : 차트에 보여질 SQL들의 최소 Elasped time 값
Cell Height: 차트의 Y축인 각 Cell의 Elasped time을 설정하는 값
히트맵 영역을 드래그하거나 셀을 클릭하여 실제 SQL 수행 내역을 별도 모달로 확인할 수 있다.
Instance Name을 클릭할 시 해당 인스턴스에 대한 다른 화면으로 갈 수 있다.
SID를 클릭할 시 해당 SID에 대한 Session Detail 화면으로 이동한다.
Long SQL List의 칼럼 내용은 을 참조하면 된다.
각 인스턴스별로 TPS (Transaction Per Second)를 보여준다.
그룹 내 각 인스턴스 당 수행되고 있는 세션들의 Elapsed Time을 시간 구간별로 나눠서 제공한다.
Response Time 기준으로 4개의 구간에 대한 구간값을 정의할 수 있다.
더보기 버튼을 클릭하여 시간 구간을 커스터마이징하고 저장할 수 있다.
실시간 Running Session / Active Session / Lock Tree 현황을 테이블 형태로 표시한다.
각 행의 SID를 클릭하면 Session Detail 및 SQL Detail 페이지로 이동하여 확인할 수 있다.
최대화 버튼을 눌러 확장할 수 있으며, 확장하기 전에는 Elapsed Time 기준 10개 항목, 확장 후에는 50개 항목이 표시된다.
Custom 영역을 우클릭하여 Add Chart 메뉴를 호출할 수 있으며, Add Chart를 통해 Custom 영역에 차트를 추가할 수 있다.
이미 존재하는 차트는 하이라이트 되어 표시된다.
Recommend 섹션에서 선택하거나, All 섹션에서 시스마스터에서 제공하는 모든 실시간 차트 중에서 Dashboard에 표시할 차트를 선택할 수 있다.
각 차트 컴포넌트의 X 버튼을 눌러 차트 컴포넌트를 삭제할 수 있으며, 차트의 위치나 크기를 드래그하여 조정할 수 있다.
그룹 내 Admin이상의 권한 혹은 Custom Privilege 가 부여되어 있을 경우 Save 버튼을 통해 Custom Area의 변경 사항을 저장할 수 있다.
Reset 버튼을 누르면 변경 사항을 되돌린다.
글로벌 내비게이션 바에서 [Realtime] > [Usage Monitoring] > [Tablespace Usage] 를 클릭하면 Tablespace Usage 페이지가 열린다.
Tablespace Usage 페이지에서는 테이블스페이스 사용량 정보를 보여준다.
모니터링 대상 DB의 테이블스페이스 사용량과 상태 정보를 확인할 수 있다. 이때 기본 수집 단위는 1시간이지만, 우 상단의 [Collect] 버튼을 이용하면 해당 시간에 실시간 정보를 수집해서 보여준다.
Last 24 hours history 에서는 그리드(Grid) 형태로 현재까지의 사용량 정보를 확인하거나, 차트(Chart) 형태로 변화율 추이를 확인할 수 있다.
Segment Size 에서는 Last 24 hours history 에서 선택한 Log Time 내 세그먼트 타입별 크기를 확인할 수 있다. 이때 해당 정보의 수집 단위는 1시간이다.
현재 모니터링 중인 인스턴스의 상태와 주요 모니터링 데이터들을 카드 뷰 형태로 확인할 수 있다.
카드 뷰는 기본적으로 3초 주기로 Refresh되며, Card Order By 에 설정된 대로 정렬되어 표시된다. (카드 정렬 기준 참조)
좌상단의 카드 레이아웃 버튼을 통해 Compact / Detailed / Extended 레이아웃으로 전환하여 확인 할 수 있다.
Cpu Usage / Memory Usage / Lock Session Waiter Count / Running Session Count로 Card View를 정렬한다.
Refresh 수행시 설정된 기준에 따라 Card View가 정렬되며, None으로 설정된 경우 의 순서대로 정렬된다.
좌상단의 핀 버튼을 클릭하여 핀 한 카드를 좌상단에 고정시킬 수 있다.
여러 카드 뷰가 핀 되었을 경우 핀 된 순서대로 고정된다.
Card View의 Updated Time을 표시한다.
Card Layout 오른쪽에 Compact / Detailed / Expanded를 클릭하여 Card View Layout을 변경할 수 있다.
Card View 선택 기능
Card View 를 클릭하여 Instance Overview에서 인스턴스를 클릭한 것과 마찬가지로 특정 인스턴스만 강조할 수 있다.
인스턴스를 강조하면 하단 Custom Area에 모든 인스턴스의 지표가 표시되는 대신 강조된 인스턴스의 데이터만 표시된다.
글로벌 내비게이션 바에서 [Realtime] > [High Availability Monitoring] > [TSC Monitoring] 메뉴를 클릭하면 TSC Monitoring 화면이 열린다.
TSC Monitoring 화면에서는 TSC 목록, 각 TSC 네트워크 구성, TSN을 통한 복구 현황 차트, Primary DB와 Standby DB 실시간 현황을 모니터링할 수 있다.
자동 갱신 주기를 설정할 수 있다. [Refresh] 버튼을 통하여 즉시 갱신할 수 있다.
TSC 목록을 확인할 수 있다.
TSC 네트워크 구성을 확인할 수 있다.







./tpmctl.sh version
TPM Agent 버전 출력
./tpmctl.sh libversion
TPM Agent 이 사용하는 TPM Stat 라이브러리 빌드 패치 목록과 Tibero의 패치 목록 출력
{Monitoring_DB_Path}
관제 데이터베이스의 경로를 입력
{Monitoring_DB_SID}
관제 데이터베이스의 SID를 입력
./tpmctl.sh [-p port] up
TPM Agent 실행, -p 옵션을 통하여 jvm 디버그 포트들을 지정할 수 있다. 기본적으로 사용 가능한 포트를 찾으나, 해당 환경에서 사용 가능한 포트를 찾지 못하여 프로세스 실행이 되지 않는다면 해당 옵션을 사용하여 수동으로 포트를 지정할 수 있다.
./tpmctl.sh down
TPM Agent 종료
./tpmctl.sh help
주의
Tibero 버전명 또는 코어셋명만으로 연동 라이브러리의 호환 여부를 판단할 수 없다. 연동 라이브러리(libtpmstat.so)는 Tibero 서버와 공유 메모리 구조체가 일치해야 정상 동작하므로, 동일한 Tibero 버전이라도 빌드 시점, 직반 패치 내역, 컴파일 옵션 등에 따라 호환되지 않을 수 있다. 따라서 과거 빌드 바이너리 또는 별도 패치가 적용된 바이너리를 사용하는 경우, 관제 연동 전 동일한 Tibero 형상 기준으로 라이브러리를 빌드하고 호환 여부를 확인해야 한다.
libJNITpmStat.so 파일이 사용하는 libtpmstat.so 라이브러리 버전이 현재 Tibero 바이너리 버전과 맞지 않다면, 기존 TPM Agent 와 동일하게 SIGSEGV 문제 등 오류가 발생하여 프로세스가 실행되지 않는다. 각 JVM 벤더별로 생성되는 오류 관련 파일 종류는 다르나 core, jitdump, javacore 등의 파일 들이 생성될 수 있으므로 해당 파일 생성시 libtpmstat.so 라이브러리 버전을 확인해야한다.
주의
TPM Agent가 참조하고 있는 Tibero Shared Memory를 해제하기 위해서는 Tibero Down을 감지해야 하는데 감지 주기는 매 수집 주기와 동일하다. 따라서 사용자의 수집 주기 설정이 길게 되어있거나 TPM Agent 자체가 느려지는 경우 등 Tibero Down 감지 자체가 늦어질 경우 Tibero Down을 하고 다시 Tibero Boot가 가능한 시점이 지연되게 된다. 이와 같이 Tibero Down 감지가 늦어져 Tibero Boot 가능 시점이 지연되는 것을 방지하기 위해서는 TPM Agent Down을 진행하고 Tibero Boot를 하면 된다.
TPM Agent 도움말 출력










Partition Name
파티션 이름
Used/Total Size
해당 세그먼트가 차지하는 공간의 비율
Tablespace Name
테이블스페이스 이름
Status
테이블스페이스의 현재 상태
Contents
테이블스페이스 종류
Permanent
Undo
Free/Total Size
테이블스페이스 여유공간 현황
Used/Total Size
테이블스페이스 사용공간 현황
Extent Management
Extent Management 방식
Allocation Type
Extent Allocation 방식
Segment Space Management
Segment Space Management 방식
Auto Extend On
해당 테이블스페이스의 Data File 중 하나라도 Auto Extend 상태인지 여부
Log Time
수집 시간
Free/Total Size
테이블스페이스 여유공간 현황
Used/Total Size
Segment Type
세그먼트 종류 (Table, Index, Undo 등)
Owner
소유자 계정
Segment Name
테이블스페이스 사용공간 현황
세그먼트 이름
[Overview] 버튼을 누르면 TSN 차트를 확인하여 복구 현황을 모니터링할 수 있다.
Primary DB와 Standby DB의 현황을 테이블 형식으로 모니터링 할 수 있다.
Primary Database, Standby Database에서 각 인스턴스 명을 클릭하면 우측 사이드 패널에서 Instance info를 확인 할 수 있다.
다음은 Primary Database 화면에서 제공하는 항목에 대한 설명이다.
Instance
인스턴스 이름
Current Log
가장 최근의 Redo Log
CPU
다음은 Standby Database 화면에서 제공하는 항목에 대한 설명이다.
Instance
인스턴스 이름
Status
Standby 의 상태. Status가 여러개 일 경우 1개만 표기하고 +n 으로 표기,
프라이머리 노드가 여러개일 경우 첫번째 노드와의 네트워크 상태가 표시된다.
값 종류
PRIMARY NOT CONNECTED
Open Mode


이전 시점 대비 이후 시점 크기 증감량
Tablespace Name
테이블스페이스 이름
Owner
Object의 소유자
Segment Name
세그먼트 이름
Segment Type
세그먼트 종류
Partition Name
파티션 이름
Earlier Extents
이전 시점의 Extent 수
Later Extents
이후 시점의 Extent 수
Earlier Blocks
이전 시점의 Blocks
Later Blocks
이후 시점의 Blocks
크기
Blocks
Block 수





현재 session의 상태 정보, session에서 수행중인 SQL 정보들을 보여준다.
현재 session의 wait event 발생 정보이다.
Wait event
현재 session에서 발생한 wait event 번호
현재 session에서 수행 중인 SQL 전문을 보여준다.
현재 session에서 수행 중인 SQL에 대한 Plan을 확인할 수 있는 화면이다. 이때 SQL Plan을 Tree 구조로 보여준다.
현재 session 상태 지표이다.
상태 지표 별 항목은 다음과 같다.
상태 지표 목록은 다음과 같다.
Instance Monitoring 페이지의 Layout Tab 영역에서 제공되는 모니터링 지표 차트의 종류에 대해 설명한다.
인스턴스별 해당 지표의 실시간 값을 막대 그래프로 나타내는 차트이다.
Line 또는 Area 차트로 전환이 가능하다.
인스턴스별 해당 지표의 실시간 값을 꺾은선 그래프로 나타내는 차트이다.
Bar 또는 Area 차트로 전환이 가능하며, 부가 기능을 통해 선 굵기를 사용자가 직접 설정할 수 있다.
인스턴스별 해당 지표의 실시간 값을 영역 그래프로 나타내는 차트이다.
Bar 또는 Line 차트로 전환이 가능하다.

