DBMS/Oracle Tibero

Tibero7 Install [티베로 설치]

Shirou_Techblog 2023. 6. 22. 16:44
반응형

1. 설치 환경

2. Tibero 설치 사전 준비사항

2.1 OS 계정 및 그룹

  • Group Name : dba
    # groupadd -g 2000 dba
  • User Name : tibero
    # useradd -u 2000 -g 2000 -d /home/tibero -m -s /bin/bash -c "Tibero RDBMS Service" tibero

2.2 FileSystem 또는 디렉토리 환경

파일시스템 또는 디렉토리를 생성하고 권한을 변경하여 티베로 설치 환경을 준비한다.

  • /tibero : 티베로 홈
  • /tbdata : 티베로 데이터 파일
  • /tblog : 티베로 로그
  • /tbarch : 티베로 아카이브 로그
  • Command
    # mkdir /tibero /tbdata /tblog /tbarch
    # chown -R tibero.dba /tibero /tbdata /tblog /tbarch
이 블로그에서 사용되는 가상머신은 /data01, /data02를 사용할 것이며, 링크를 걸어 환경을 구성할 것이다.
# mkdir /data01/tibero /data01/tbdata /data02/tblog /data02
/tbarch
# ln -s /data01/tibero /tibero
# ln -s /data01/tbdata /tbdata
# ln -s /data02/tblog /tblog
# ln -s /data02
/tbarch /tbarch
# chown -R tibero.dba data01 data02
# chown -R tibero.dba /tibero /tbdata /tblog /tbarch

2.3 기본 패키지(RPM)설치

각 패키지들은 반드시 해당 버전 이상의 패키지가 설치되어 있어야 하며,

OS 및 버전별로 패키지명이나 버전이 상이할 수 있다.

- Linux Platform Packages List

gcc-3.4.6-11

gcc-c++-3.4.6-11

libgcc-3.4.6-11

libstdc++-3.4.6-11

libstdc++-devel-3.4.6-11

libaio-0.3.105-2

libaio-devel-0.3.105-2

pstack (gdb)

glibc

libnsl

 

- 설치된 RPM을 확인
현재 OS에 설치되어 있는 RPM을 확인한 후 설치가 되지 않은 RPM은 dnf 또는 yum를 이용하여 설치한다.

Repository 구성이 되어 있지 않으면 별도로 rpm을 다운로드하여 설치한다.

rpm을 수동설치 시 의존성(Dependency)을 고려하여 설치하도록 한다.

  • # rpm -qa |grep jdk
    # rpm -qa |grep gcc
    # rpm -qa |grep gcc-c++
    # rpm -qa |grep libgcc
    # rpm -qa |grep libstdc
    # rpm -qa |grep libaio
    # rpm -qa |grep libaio-devel
    # rpm -qa |grep libnsl
  • grep으로 확인되지 않은 패키지는 dnf list | grep [rpm명] 으로 확인하여 install 해주도록 한다.
    예) # dnf list | grep gcc-c++
    설치할 수 있는 rpm 확인 후 # dnf install [rpm명]
    # dnf install gcc-c++.x86_64
    실행하게 되면 의존성 확인 및 인스톨을 진행할지 확인 후 y를 입력하면 인스톨을 진행한다.

2.4 OS 파라미터 설정

OS에서 설정해야 할 커널 파라미터와 Shell Limits 파라미터를 설정한다.

커널 파라미터의 값을 변경한 경우에는 반드시 시스템을 다시 기동시 켜야 한다.

  • 파일 리스트
    /etc/sysctl.conf
    /etc/security/limits.conf
    /etc/systemd/logind.conf
    • /etc/sysctl.conf
      ※ sysctl 환경설정을 잘못하는 경우 부팅에 실패할 수 있으니 주의
      부팅에 실패하였을 경우 Single Mode로 부팅하여 잘못된 환경설정을 다시 하도록 한다.
      각 항목의 값은 티베로 매뉴얼 또는 커널 튜닝에 대한 정보를 참고

sysctl.conf
0.00MB

kernel.sem = 10000 32000 10000 10000
                                 # semmsl : 세마포어 세트당 세마포어의 최대 개수
                                 # semmns : 시스템 전체에 대한 세마포어의 최대 개수
                                 # semopm : 시스템 호출 별로 수행될 수 있는 세마포어 작업의 수
                                 # semmni : 시스템 전체에 대한 세마포어 세트의 최대 개수
kernel.shmmax = 1460752384       # free -b 결과 total / 2, 물리적인 메모리의 절반이상 (byte)
kernel.shmmni = 4096                    # 공유 메모리 식별자의 개수
kernel.shmall = 281130                 # 시스템에서 사용 가능한 공유 메모리의 최대 크기
                                                       # shmmax/PAGE_SIZE,
                                                       # Page Size 확인 cat /proc/meminfo | grep PageTables
                                                       # 1460752384/5196 = 281130
fs.nr_open = 65536                        # 하나의 프로세스가 열 수 있는 최대 파일 개수
fs.file-max = 67108864                  # 커널이 동시에 열 수 있는 file handle
fs.aio-max-nr = 1048576                # 동시에 들어오는 요청의 개수를 제한
net.ipv4.ip_local_port_range = 1024 65000  # 시스템에 접속 시 사용할 수 있는 포트의 범위
net.core.rmem_default = 262144    # TCP 수신 버퍼 크기의 기본값 설정
net.core.wmem_default = 262144   # TCP 송신 버퍼 크기의 기본값 설정
net.core.rmem_max = 67108864    # TCP 수신 버퍼 크기의 최대값 설정
net.core.wmem_max = 67108864   # TCP 송신 버퍼 크기의 최대값 설정
  • /etc/sysctl.conf Sample
kernel.sem = 10000 32000 10000 10000
kernel.shmall = 420352
kernel.shmmax = 1921853440

kernel.shmmni = 4096
fs.nr_open = 65536
fs.file-max = 67108864
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 67108864
net.core.wmem_max = 67108864
  • /etc/systemd/logind.conf
    RemoveIPC no 주석해제 또는 추가입력
  • Tibero7 공식 매뉴얼

Tibero_7_Installation-Guide_v2.1.1.pdf
0.94MB

커널 파라미터
kernel.sem 순서대로 SEMMSL, SEMMNS, SEMOPM, SEMMNI
최소 설정값은 아래와 같다.
kernel.sem
SEMMSL : 2 / 권장값 : (Tibero 전체 Thread ) x 2
SEMMNS : (Tibero 전체 Thread ) x 2
SEMOPM : 2(=SEMMSL) / 권장값 : (Tibero 전체 Thread ) x 2
SEMMNI : (Tibero 전체 Thread )
max
값을 높게 설정해도 큰 문제가 없기에 여유롭게 설정하는 것을 권장한다.
kernel.shmall ceil(shmmax/PAGE_SIZE)
kernel.shmmax 물리적인 메모리의 절반 (byte)
kernel.shmmni 4096
fs.nr_open nofile 파라미터 이상으로 설정한다.
fs.file-max (nofile 파라미터) x (WTHR_PROC_CNT + PEP_PROC_CNT) 또는 67108864 으로 설정한다.
fs.aio-max-nr 1048576
net.core.rmem_default 262144
net.core.wmem_default 262144
net.core.rmem_max 67108864
net.core.wmem_max 67108864

3. 티베로 설치 / Tibero Install

3.1 파일 업로드 및 압축 해제 

  • 설치파일은 tar 형태, license 파일은 xml 형태로 제공된다.
    설치파일은 /tibero에 업로드 후 압축을 풀게 되면 /tibero/tibero7 또는 /tibero/tibero6으로 압축이 풀리게 되며,
    라이선스 파일은 /tibero/tibero7/license 위치에 업로드한다.
    [실제 기업에 설치하려면 관계자에게 최신버전을 받도록 한다. 공홈에 있는 파일은 최신 버그픽스가 된 버전이 아님]
  • # cd /tibero
    # tar -xvf tiberoX-bin-FSxx~~~.tar.gz
    # chown -R tibero.dba tibero*

3.2 Tibero User 환경파일 설정

  • # su - tibero
    vi ~/.bash_profile
export TB_HOME=/tibero/tibero7           #Tibero가 설치될 위치
export TB_SID=tibero                              #SID
export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib
export PATH=$PATH:$TB_HOME/bin:$TB_HOME/client/bin
export LANG=ko_KR.UTF-8
export TB_NLS_LANG=UTF8

3.3 Tibero 엔진 설치

  • tibero 계정에서 진행

1) Tip File 생성

# cd $TB_HOME/config

# ./gen_tip.sh

이 명령이 실행되면 환경 파일(.tip)과 tbdsn.tbr, psm_commands 파일이 생성된다.

 

2) Nomount 모드 기동

# tbboot nomount

 

3) tbSQL 유틸리티를 이용하여 데이터베이스에 접속

# tbsql sys/tibero

 

Rocky 8 버전 기준 lib 파일 버전 문제로 tbsql 에러 발생시 Link 작업을 해야 한다.

  • root로 진행
    # ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5
    # ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5

4) CREATE DATABASE 문을 이용하여 원하는 데이터베이스를 생성
환경에 따라 SID 및 각 datafile, undo, redo 경로 등과 Size를 변경하여 사용한다.
character set UTF8
national character set UTF16 항목은 운영환경에 따라 변경하도록 한다.
각 쿼리는 공식 매뉴얼을 참고하도록 한다.

create database tibero.txt
0.00MB

create database "tibero"
user sys identified by tibero
maxinstances 8
maxdatafiles 100
character set UTF8
national character set UTF16
logfile
group 1 '/tbdata/SYS/log001.log' size 100M,
group 2 '/tbdata/SYS/log002.log' size 100M,
group 3 '/tbdata/SYS/log003.log' size 100M
maxloggroups 255
maxlogmembers 8
noarchivelog
datafile '/tbdata/SYS/system001.dtf' size 100M autoextend on next 100M maxsize unlimited
default temporary tablespace TEMP
tempfile '/tbdata/SYS/temp001.dtf' size 100M autoextend on next 100M maxsize unlimited
extent management local autoallocate
undo tablespace UNDO
datafile '/tbdata/SYS/undo001.dtf' size 100M autoextend on next 100M maxsize unlimited
extent management local autoallocate
SYSSUB
datafile '/tbdata/SYS/syssub001.dtf' size 10M autoextend on next 10M maxsize unlimited
default tablespace USR
datafile '/tbdata/SYS/usr001.dtf' size 100M autoextend on next 10M maxsize unlimited
extent management local autoallocate;

 

5.    tbboot 명령어로 Tibero를 다시 기동

  • tbsql 접속을 종료하고 다시 기동 한다.
    SQL > quit
  • # tbboot
    하게 되면 NORMAL mode로 기동 된다.

6.    Tibero 기본 데이터 생성

# cd $TB_HOME/scripts

# ./system.sh

Enter SYS password: tibero 입력
Enter SYSCAT password: syscat 입력
SQL 파일을 수행하면 role, system user, view, package 등이 생성되며

sys syscat 계정에 대한 기본 암호는 각각 tibero, syscat이다.

설치 스크립트 진행 시 모두 y를 입력하여 설치하며 모두 완료되면 기본 설치가 완료된다.

반응형