data

Tibero DBMS 설치 및 설정 ( Linux, Windows )

갬짱 2024. 3. 10. 21:16

 

23.10.28

 

Linux환경에서 tibero 설치

 

[ 설치이전의 준비사항 ]

- JDK설치(1.5.17이상) : 여러가지 유틸리티 tools 이용시 필요 ( export, import, loader 등.. )

- 운영체제별 커널 파라미터 설정 : 독점제한

 

- 운영체제별 shell limits 설정 : 프로세스 리소스의 사용제한

  • 파일경로 : /etc/security/limits.conf
  • 소프트 한도 : 새로운 프로세스가 만들어졌을 때 디폴트로 적용
  • 하드 한도 : OS 유저가 소프트 한도 이상으로 큰 값을 적용할 수 있으나, 최대 크기는 하드 한도 까지 임

- 호스트명(라이선스 요청시 동일한 이름 이용) 확인 ( hostname )

- 포트번호 확인

 

 

[ 설치과정 ]

Other linux운영체제(64-bit) T1을 VirtualBox로 구동한 환경에서 설치한다.

이때 가상머신T1과 윈도우의 공유영역( C:/tibero/s )을 만들어서 함께 접근하도록 한다.

 

 

1. 설치파일준비

  • Tibero 바이너리 파일 ( tibero6-bin-FS07_CS_2005-linux64_3.10-199301-opt.tar.gz )
  • 라이센스 파일( 반드시 호스트명과 동일한 이름으로 발급받기 ) ( license.xml )

2개의 파일을 공유폴더 경로( C:/tibero/s )에 다운로드 받는다.

 

 

 

2. 환경설정파일에 환경변수 추가

 

bash shell의 환경설정파일 open

$ vi ~/.bash_profile

추가할 내용들

 

- Java 환경변수-

  • JAVA_HOME, JDK_HOME : jdk 설치경로
  • PATH : 자바실행파일(bin) 경로

- Tibero 환경변수 -

  • TB_HOME : Tibero 소프트웨어가 설치된 디렉토리
  • TB_SID : Tibero System Identify 서비스 명 ( 인스턴스 이름 ) ---> 로그이름, 파라미터파일 이름으로 활용됨
  • TB_PROF_DIR : core 파일이 발생할 경우 파일 생성 위치 지정
  • PATH : Tibero 서버를 사용하기 위한 실행파일 경로 설정 ( bin디렉토리 )
  • LD_LIBRARY_PATH : Tibero 서버 사용시 필요한 공유 라이브러리 패스 설정 ( lib디렉토리 )

Tibero alias

bash shell의 설정파일 .bash_profile에서 확인한 환경변수 list

 

 

환경변수 적용

$ source ~/.bash_profile
 

 

환경변수 적용여부 확인

$ echo $TB_SID
tibero
$ echo $TB_HOME
/tibero/tibero6
 

 
 

3. Tibero 바이너리 압축해제, 라이센스파일 복사

 

티베로 바이너리 파일, 라이센스 파일을 T1머신의 /tibero 디렉토리에 위치시킨다.

$ cd /tibero/s
$cp tibero6-bin* /tibero
$cp license.xml /tibero
 

티베로에 접속하여 압축파일 해제

$ cd /tibero
$ tar -xvzf tibero6-bin-FS06-linux64-151366-opt-tested.tar.gz
 

하위에 tibero6디렉토리가 생성되고( $TB_HOME 경로 완성 ) 그 하위에 bin client config instance lib license nls scripts 디렉토리들이 생성된다.

tibero6 => $TB_HOME
| --- bin
| --- client
| --- config
| --- scripts
 

라이센스 파일을 $TB_HOME/licenese 디렉토리로 복사한다.

$ cp license.xml $TB_HOME/license
 

 

4. 파라미터 파일 생성용 shell 실행 -> 파라미터 파일(parameter)과 접속설장파일(network) 수정

 

config 디렉토리로 들어가서 $TB_SID.tip(파라미터파일)을 생성하는 gen_tip 쉘을 실행한다.

$ cd $TB_HOME/config
$ ./gen_tip.sh
 

이로써 파라미터 파일($TB_HOME/config/$TB_SID.tip)이 생성되고

접속설정 파일($TB_HOME/client/config/tbdsn.tbr)이 생성된다.

 

파라미터파일을 수정한다.

$ vi $TB_HOME/config/$TB_SID.tip 
 

 

* 다양한 파라미터 종류들

DB_NAME의 경우는 클러스터링 환경이 아니라면 관습적으로 인스턴스명($TB_SID)와 일치시킨다.

MEMORY_TARGET = TOTAL_SHM_SIZE(프로세스 공유영역) + PGA(프로세스 개별영역)이 된다.

DB_CREATE_FILE : DB파일이 생성되는 기본경로

 

접속파일(network설정파일)도 수정한다. = tbdsn.tbr은 client가 tibero 접속시 필요한 통신환경을 설정하는 파일이다.

$ vi $TB_HOME/client/config/tbdsn.tbr
 

 

접속식별자(connect_identifier) =

HOST : 접속할 tibero ip

PORT : 접속할 tibero port ( 기본포트로 지정한 9000, 스페셜포트로 지정한 9001 )

DB_NAME : 접속할 tibero database 이름

 

 

5. Tibero 인스턴스 기동( nomount 모드 )

$ tbboot nomount
 

tbboot : bin 파일내의 실행파일

nomount : 인스턴스 시작후 멈춘상태, DB오픈을 동작하지 않는상태

 

tbboot(인스턴스 부팅)의 다양한 mode

  • nomount : instance가 시작된 단계, DB를 open하지 않은 상태( 설치후 구동, DB생성 수행 / control file 부재로 redo log 복구불가 )
  • mount : control file만 open한 상태( redo log를 이용한 datafile의 복구작업 수행 / control file을 조회, 수정가능한 상태 )
  • open : 모든 file이 open한 상태( control file, data file, log file이 일관된 상태 / control file을 읽기만 가능한 상태 )

-> open mode가 default이고, nomount와 mount는 sys유저만 접근이 가능하다.

 

 

6. Database 생성

 

sys유저로 접속한다.

기본적으로 유저명/password를 입력하고 @connect_identifier(접속식별자)를 입력한다. TB_SID와 같은 것이 기본값이다.

tbsql sys/tibero@$TB_SID , tbsql sys/tibero@t1019 , tbsql sys/tibero@t1019s(관리자접속)

$ tbsql sys/tibero
 

database를 구축한다.

CREATE DATABASE 
USER sys IDENTIFIED BY tibero
MAXDATAFILES 256
CHARACTER SET UTF8
NATIONAL CHARACTER SET UTF16
LOGFILE 
GROUP 0 '/db/t1019d/redo1/redo01.log' SIZE 50M,
GROUP 1 '/db/t1019d/redo1/redo11.log' SIZE 50M,
GROUP 2 '/db/t1019d/redo1/redo21.log' SIZE 50M
MAXLOGFILES 100
MAXLOGMEMBERS 2
NOARCHIVELOG
DATAFILE '/db/t1019d/dbfile/system01.dtf' SIZE 300M
DEFAULT TEMPORARY TABLESPACE TEMP
TEMPFILE '/db/t1019d/dbfile/temp01.dtf' SIZE 300M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128k
UNDO TABLESPACE UNDO
DATAFILE '/db/t1019d/dbfile/undo01.dtf' SIZE 300M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128k
DEFAULT TABLESPACE USR
DATAFILE '/db/t1019d/dbfile/usr01.dtf' SIZE 300M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128k
SYSSUB
DATAFILE '/db/t1019d/dbfile/syssub.dtf' SIZE 300M
;
 

 

데이터베이스의 생성항목 : (tablespace) datafile (extent) + redologfile + control file -> 이때 control file은 parameter에서 정의

파일의 옵션 : autoextend(자동증가옵션)

extent의 옵션 : autoallocate( 시스템에 의해 자동으로 extent 블록갯수 지정 ) , uniform size 128k( 128k만큼의 블록들을 자동할당 )

이외 소유자, 문자집합 등 지정

 

 

7. Tibero 인스턴스 기동( normal 모드 )

 

database 생성후 자동으로 tbdown이 수행된다 ( tbdown normal node )

이후 다시 normal mode로 tbboot하여 정의한 database에 따른 control file, log file, datafile 공간을 생성한다.

$tbboot
 

 

8. system object 생성용 shell 실행

 

system.sh쉘을 실행하여 Data dictionary 및 system 패키지를 추가적으로 생성한다.

이때 첫번째 sys유저의 패스워드(tibero)와 두번째 syscat 패스워드(syscat)을 입력해야한다.

$ cd $TB_HOME/scripts
$ sh system.sh -p1 tibero -p2 syscat -al y -a2 y -a3 y -a4 y
 
참고용 옵션
 

 

scripts 디렉토리 내에 생성된 Data dictionary들과 pkg

 

 


 

 

Windows환경에서 tibero 설치

 

 

GUI모드를 지원하는 tibero installer를 이용한다.

 

database를 생성하는 마법사를 실행하기 위해서는 자바 환경변수 설정을 해준다.

  • 새로운 시스템변수 JAVA_HOME = jdk 설치경로
  • 새로운 시스템변수 CLASSPATH = %JAVA_HOME%\lib
  • 기존 시스템변수 path를 편집하여 $JAVA_HOME%\bin 추가

 

관리자 권한으로 실행한 cmd에서

%TB_HOME%\client\bin\runWizard -m gui
 
C:\TmaxData\tibero6\client\bin
 

GUI 환경에서 인스턴스를 설정하고 초기 parameter를 설정할 수 있다. ( TB_HOME, TB_SID, DB Name, Listenr port 등 ..)

 

GUI 환경에서 생성할 데이터베이스 내용을 설정할 수 있다. ( 소유자, 크기, 문자집합 )