ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • tbstudio 실행 및 기능 살펴보기
    Tibero DB (Tmax AI Bigdata Academy) 2023. 10. 22. 08:19

    이번 실습 교육시간에 Tibero 데이터베이스 관리를 위해 제공하는 각종 유틸리티 도구 중 하나인 tbstudio에 대해서

    실행 법과 주요 기능들을 살펴봤었다. 추후 협업 프로젝트를 진행할 때 클라우드 서버에 Tibero를

    올리게 된다면, 로컬 환경과 연결하여 작업하면 매우 편리할 거 같아

    블로그에 전반적인 기능들과 흥미로웠던 부분들을 기록해두려고 한다.

    (개인적으로 우분투 환경에서 설치한 tibero와 tbstudio를 연동하는 게 아닌, 실습 노트북 윈도우 환경에 설치한 tibero와 연동하면서 진행했던 내용을 기록한 것이니 참고 바람!)

     

     

     

    우선 tbstudio는 MySQL에서 제공하는 Workbench라고 생각하면 될 거 같다.

    유사한 기능들이 존재하기 때문에 Workbench를 사용해 본 사람이라면 익숙하게 느껴질 것이다.

    실행하기에 앞서서 간략하게 Tibero Studio(tbstudio)가 제공하는 주요 기능을 살펴보자면 아래와 같다.

    <Tibero Studio 가 제공하는 주요 기능>

    • Tibero Studio 의 환경설정
    • 일반적인 SQL 문장 및 tbPSM 프로그램의 입력 , 편집 , 실행 , 저장
    • 트랜잭션 설정 및 종료
    • 스키마 객체의 관리
    • 외부 유틸리티 및 프로그램의 실행
    • 개발 도구를 이용한 데이터베이스 개발

     

     

     

    실행 방법

    우선 tbstudio를 실행하려면 Java 1.8 이상이 설치되어 있어야 하므로

    사전에 설치 작업이 필요하다.

    java 1.8 버전을 설치하고 명령 프롬프트에서 java -version 명령어를 통해 성공적으로 설치되었는지 확인할 수 있다.

     

    우선 아래의 TechNet 사이트에 들어가 로그인을 해준다.

    이후, 다운로드 > 데이터베이스 > Tibero > Tibero Studio (JDK 1.8) > Windows (x86) 64-bit (본인의 환경에 맞게 다운로드)

    https://technet.tmaxsoft.com/ko/front/main/main.do

     

    Technet

    효율적인 시스템 관리를 위한 기술 전문 포탈, 테크넷서비스

    technet.tmaxsoft.com

    이후 다운로드 폴더에서 TiberoStudio.exe를 실행해 주면 된다.

     

    그럼 아래와 같이 접속 정보를 입력해야하는데,

    당시 실습 노트북에 윈도우 버전으로 Tibero6를 설치했기 때문에

    IP를 localhost로 작성하고, Port는 기본 포트인 8629

    user와 password는 Tibero6를 설치하면서 설정한 sys/tibero로 입력해주었다.

    DB Name은 Tibero6가 설치된 경로의 tibero6/client/config에서 tbdsn.tbr를 참조하면 된다.

    (Ubuntu 환경에서 설치했을 때의 tbdsn.tbr 모습. 필자의 경우 윈도우 환경에서도 동일하게 설정해줬음)

     

     

    이후 Test 버튼을 눌러 DB와 연결이 잘 되는지 확인해보고 성공적으로 연결 된다면

    Save As로 등록 후, Connect 버튼 클릭!

     

    위 화면이 나온다면 성공적으로 연결된 것이다!

    참고로 다른 서버의 티베로 db를 연결 하려면

    File > new connection으로 해당 서버의 db 연결을 해주면 된다.

     

     

     

    tbstudio 살펴보기

    tbstudio의 왼쪽 사이드바를 보면 User 별로 존재하는 것을 확인할 수 있다.

    (SYS 유저, OUTLN 유저 등등)

    SYS 유저를 열어 살펴보면 테이블이 400개가 넘는 것을 확인할 수 있다.

    다수와의 프로젝트를 진행하게 된다면 관리자가 User를 따로 생성해서 권한 부여를 함으로써

    작업하는 방식으로 수행하는 것이 좋다. 

     

    위와 같이 kim이라는 유저와 dankook이라는 비밀번호를 설정하여 유저를 생성하면

    아래와 같이 kim이라는 유저가 생성된 것을 확인할 수 있다.

    추가로, 위 상태에서 tbsql kim/dankook으로 로그인 시,

    TBR-17011: Logon denied as CREATE SESSION privilege is not granted.tbs이라는

    오류가 발생할텐데 그 이유는 유저만 생성하고 권한을 설정해주지 않았기 때문이다.

    데이터베이스 접속 권한과 테이블 생성 권한을 추가해주려면 아래와 같은 query문을 작성해주자.

    권한 부여
    GRANT CREATE SESSION to kim;
    GRANT CREATE TABLE to kim;
    
    권한 회수
    REVOKE CREATE SESSION FROM kim;
    REVOKE CREATE TABLE FROM kim;

     

    여러 권한 부여 및 제거 방법을 알고 싶다면 아래 링크 참고

    https://gent.tistory.com/534 

     

    [Oracle] 시스템 권한 부여 방법 (GRANT, REVOKE)

    오라클에서 시스템 권한을 부여하거나 회수(제거) 하기 위해서는 GRANT, REVOKE 문을 사용하면 된다. 사용자를 생성 후 시스템 권한이 부여되어야 데이터베이스 접속(로그인)이 가능하고 테이블 생

    gent.tistory.com

     

     

     

    DBA 기능

    tstudio에 DBA 기능을 활성화 하기 위해서는 아래와 같은 설정을 진행해 준다.

    TiberoStudio.ini 메모장이나 편집기로 열기

    -startup
    plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.300.v20150602-1417
    -logLevel=info
    -isDBA=false
    -vmargs
    -Xms256m
    -Xmx1024m
    • -isDBA=false 부분을 true로 변경 후, 저장

     

    다시 tbstudio에 접속하면,

    기존 View, Tool 목록 사이에 DBA 목록이 생긴 걸 확인할 수 있다.

     

    DBA > Session Manager

    Session Manager 화면에서 현재 연결된 데이터베이스의 세션 정보를 조회할 수 있다.

    • 로그인한 사용자들 식별 가능

    DBA > Session Manager로 접속하면 현재 tibero db에 로그인한 사용자들을 확인할 수 있다.

    (tbsql.exe로 tbsql kim/dankook으로 로그인을 수행하면 tbstudio에서 접속한 것을 아래 사진처럼 조회할 수 있다.)

     

    • 유저별로 작성한 query문 조회 가능

    유저가 query문을 작성하면, Session Manager에서 해당 내용을 모니터링 할 수 있다.

    query문을 작성하면 공유 메모리에 저장되고, 이를 tbstudio가 메모리에 저장되어있는 query를 가져오는 것이다. 단, 메모리는 한정되어 있기 때문에 시간이 지나면 계속 밀려나면서 사라진다.

    예시로 User kim이 자신의 환경에서 위와 같은 query문을 작성한다면

    다음과 같이 tbstudio에서 User kim이 작성한 query문에 대해 모니터링이 가능하다.

     

     

    DBA > Security Manager

    Security Manager에서 사용자, 역할, 권한, 프로파일 등 데이터베이스의 모든 보안과 관련된 사항을

    다양한 관점에서 조회할 수 있으며 실시간으로 변경하고 설정할 수 있다.

    • 유저들의 비밀번호 권한을 수정할 수 있음

    참고로 Unlocked는 로그인을 할 수 있다는 의미, Locked는 로그인이 불가능하다는 의미이다.

     

    • 유저의 권한 수정 가능

    (User TIBERO)

    위 사진에 나온 것처럼 Roles에 포함되는 CONNECT, DBA, HS_ADMIN_ROLE, RESOURCE, SELECT_CATALOG_ROLE는 현재 존재하는 전체 권한들을 의미한다.

    그 아래에 Granted Roles가 말 그대로 TIBERO가 가지고 있는 권한을 의미한다.

    Up 버튼을 누르면 TIBERO의 특정 권한을 뺏고, Down을 누르면 전체 Roles에서 특정 권한을 부여할 수 있다.

     

     

    DBA > Tablespace Manager

    Tablespace Manager 화면에서 tbAdmin과 연결 중인 데이터베이스에 존재하는 

    테이블 스페이스의 정보를 조회할 수 있으며, 

    테이블 스페이스의 생성, 수정, 삭제 기능을 사용하여 테이블 스페이스를 관리할 수 있다.

     

    여담으로 추후 프로젝트를 하면 위 사진처럼 초기에 설정한 5개의 테이블 스페이스에서

    추가로 테이블 스페이스를 만들고 User를 추가해서 작업을 수행해야한다.

    https://jfbta.tistory.com/157

     

    Tibero ] 테이블 스페이스(Table Space)와 스키마(Schema) 생성 후 권한 부여

    1. tibero 접속 1) windows면 cmd를 열고, linux는 putty를 연다. tbsql sys 2) tbsql sys 입력 후 패스워드를 입력 2. 테이블 스페이스 추가 - 테이블 스페이스는 간단히 설명하면 '데이터를 저장하는 공간' 혹은 '

    jfbta.tistory.com

     

     

    DBA > SQL Monitor

    SQL Monitor에서 Tibero 서버의 SQL을 모니터링할 수 있다.

    메모리에 올라오는 query문들을 select해서 볼 수 있고, query문 중에 내부에서 자동으로 실행되는 query들도 있다.

    위 사진에서는 query문이 1번 이상 실행된 것들을 조회하였다.

    아래 사진처럼 Include SYS User's SQL을 체크하면 sys 유저가 실행한 query 들도 포함해서 조회한다.

     

     

    DBA > Transaction Monitor

    Transaction Monitor 화면에서 Tibero 서버의 트랜잭션을 모니터링할 수 있다.

    현재 존재하는 Transaction을 조회해줌 (파란색 새로고침 클릭)

    일반적으로 Transaction은 아주 짧은 시간에 존재하기 때문에 안보일 수 있다.

    (ex. 바로 insert 하자마자 commit 할 수 있음)

    lock인 상태가 되었을 때 Transaction Monitor를 조회하면 해당 정보들이 나올 수 있다. 

     

     

    DBA > Instance Monitor

    Instance Monitor 화면에서 데이터베이스 인스턴스(Instance)의 상태를 실시간으로 감시할 수 있다.

    실시간으로 여러 정보들을 확인하고 DB 부하 정보들도 파악할 수 있다.

    위 사진에서 보다시피, 당시 tbsql.exe에 접속한 User kim과 tibero studio 총 두 개이므로

    Sessions에 두 줄이 표시되는 것을 확인할 수 있다.

     

     

     

     

    DBA 기능에 대해서 더 자세히 알고싶다면 아래 Tibero 공식 문서를 참고하기 바랍니다!

    https://technet.tmaxsoft.com/upload/download/online/tibero/pver-20160406-000002/tibero_tbadmin/chapter_sect_dba.html

     

    제4장 DBA 기능

    참고 각각의 추가적인 부분은 "Tibero tbPSM 안내서"를 참고한다.

    technet.tmaxsoft.com

     

Designed by Tistory.