문서유형ㅣ기술정보
분야ㅣ설치
적용제품버전ㅣ7FS04PS
문서번호ㅣTINTI046
개요
테스트 환경
서버 2대로 구성하였으며, Primary Node에는 tibero user, Standby Node에는 obs, tibero user를 생성하였습니다.
- OS : CentOS Linux release 8.4.2105
- Tibero : Tibero 7.2.4 (build 303667)
방법
설치 전 확인 사항
빌드 옵션
observer는 tbcmobs 실행파일을 이용하여 동작합니다. tbcmobs는 $TB_HOME/bin 경로에 존재하며, 바이너리 빌드 시 컴파일 옵션이 observer 모드로 되어 있어야 합니다. (Linux는 기본 observer 모드로 컴파일 됩니다.)
확인 방법은 tbboot -version 수행 시 compiled with 옵션에 "-D_CM_OBSERVER" 가 존재해야 합니다.
[tibero@kimmi ~]$ tbboot -version
Tibero 7 (DB 7.2.4) Build 303667
Linux bistro-build-centos_8.4 5.15.0-134-generic #145~20.04.1-Ubuntu SMP Mon Feb 17 13:27:16 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux version (little-endian)
Patch files (FS02PS_700093a FS02PS_700103a FS02PS_344166f FS02PS_700110a FS02PS_342949f)
Compiled with "cc -no-pie -ggdb -fstack-protector-all -fno-strict-aliasing -fno-omit-frame-pointer -pipe -O3 -D_OPT_COMPILED -U_FORTIFY_SOURCE -D_USE_VIP -Wall -W -Werror-implicit-function-declaration -Wno-unused-parameter -Wpointer-arith -Wdeclaration-after-statement -DHAVE_CONFIG_H -D_WORDSIZE=64 -D_OS_LINUX -D_LINUX_X86_64 -D_X86 -DUSE_ASSERT -DTSAM -DTSAM_NO_ESDS_SEQUENCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_USE_FSYNC -D_CHECK_LICENSE -D_STBLOG -D_TAC -DFD_SETSIZE=8192 -D_CM_OBSERVER -D_USE_FALLOCATE -D_GNU_SOURCE -D_GNU_SOURCE -D_GNU_SOURCE -D_GNU_SOURCE -DHAVE_EPOLL"
Compiled at Oct 13 2025 01:59:51 build seq 303667 init rev {2023-11-24}
설치
1. 유저 생성 및 환경설정
1.1 Primary Node
-- tibero user $ groupadd dba $ useradd -d /home/tibero -g dba tibero $ su - tibero $ vi .bash_profile ### Tibero 7 ENV ### export TB_HOME=/home/tibero/tibero7 export TB_SID=tsc_P export TB_PROF_DIR=$TB_HOME/bin/prof export PATH=.:$TB_HOME/bin:$TB_HOME/client/bin:$JAVA_HOME:$PATH export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib:$LD_LIBRARY_PATH ### Cluster Manger ENV ### export CM_HOME=$TB_HOME export CM_SID=PRIMARY
1.2 Standby Node
-- tibero user $ groupadd dba $ useradd -d /home/tibero -g dba tibero $ su - tibero $ vi .bash_profile ### Tibero 7 ENV ### export TB_HOME=/home/tibero/tibero7 export TB_SID=tsc_S export TB_PROF_DIR=$TB_HOME/bin/prof export PATH=.:$TB_HOME/bin:$TB_HOME/client/bin:$JAVA_HOME:$PATH export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib:$LD_LIBRARY_PATH ### Cluster Manger ENV ### export CM_HOME=$TB_HOME export CM_SID=PRIMARY -- obs user $ su - $ useradd -d /home/obs -g dba obs $ su - obs $ vi .bash_profile ### Tibero 7 ENV ### export TB_HOME=/home/obs/tibero7 export TB_PROF_DIR=$TB_HOME/bin/prof export PATH=.:$TB_HOME/bin:$TB_HOME/client/bin:$JAVA_HOME:$PATH export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib:$LD_LIBRARY_PATH ### Cluster Manger ENV ### export CM_HOME=$TB_HOME export CM_SID=OBSERVER
2. 바이너리 압축 해제
2.1 Primary Node
$ su - tibero $ tar -xvzf tibero7-bin-FS02_PS03-linux64_4.18-295003-20250604143651.tar.gz
2.2 Standby Node
$ su - tibero $ tar -xvzf tibero7-bin-FS02_PS03-linux64_4.18-295003-20250604143651.tar.gz $ su - obs $ tar -xvzf tibero7-bin-FS02_PS03-linux64_4.18-295003-20250604143651.tar.gz
3. 라이선스 적용
hostname, ncpu 정보에 맞는 라이선스를 각 서버에 업로드 합니다.
3.1 Primary Node
$ su - tibero $ vi $TB_HOME/license/license.xml
3.2 Standby Node
$ su - tibero $ vi $TB_HOME/license/license.xml
참고
observer user는 license가 필요하지 않습니다.
4. $CM_SID.tip 설정
각 유저별로 $TB_HOME/config/$CM_SID.tip 을 설정합니다.
4.1 Primary Node
-- tibero $ vi $TB_HOME/config/$CM_SID.tip CM_NAME=PRIMARY CM_UI_PORT=18632 CM_RESOURCE_FILE=/home/tibero/tibero7/config/cm_res CM_HEARTBEAT_EXPIRE=300 CM_WATCHDOG_EXPIRE=290
4.2 Standby Node
-- tibero $ vi $TB_HOME/config/$CM_SID.tip CM_NAME=STANDBY CM_UI_PORT=18632 CM_RESOURCE_FILE=/home/tibero/tibero7/config/cm_res CM_HEARTBEAT_EXPIRE=300 CM_WATCHDOG_EXPIRE=290 -- obs $ vi $TB_HOME/config/$CM_SID.tip CM_NAME=OBSERVER CM_MODE_OBSERVER=Y CM_OBSERVER_PORT=9050 CM_UI_PORT=28632
5. $TB_SID.tip 설정
5.1 Primary Node
-- tibero $ vi $TB_HOME/config/$TB_SID.tip DB_NAME=tsc LISTENER_PORT=8629 CONTROL_FILES="/home/tibero/tbdata/c1.ctl" DB_CREATE_FILE_DEST="/home/tibero/tbdata" LOG_ARCHIVE_DEST="/home/tibero/tbarch" MAX_SESSION_COUNT=20 TOTAL_SHM_SIZE=1G MEMORY_TARGET=2G ### TSC Primary DB ENV ### LOG_REPLICATION_MODE=PERFORMANCE LOG_REPLICATION_DEST_1="172.16.59.111:8633 LGWR ASYNC" ## Standby DB IP:PPORT+4 ### TBCM Primary ENV ### STANDBY_USE_OBSERVER=Y CM_PORT=18632 ## $CM_SID.tip에 설정한 CM_UI_PORT와 동일하게 작성 LOCAL_CLUSTER_ADDR=172.16.59.110 ## local IP LOCAL_CLUSTER_PORT=15000
5.2 Standby Node
-- tibero $ vi $TB_HOME/config/$TB_SID.tip DB_NAME=tsc LISTENER_PORT=8629 CONTROL_FILES="/home/tibero/tbdata/c1.ctl" DB_CREATE_FILE_DEST="/home/tibero/tbdata" LOG_ARCHIVE_DEST="/home/tibero/tbarch" MAX_SESSION_COUNT=20 TOTAL_SHM_SIZE=1G MEMORY_TARGET=2G ### TSC STANDBY DB ENV ### LOG_REPLICATION_MODE=PERFORMANCE LOG_REPLICATION_DEST_1="172.16.59.110:8633 LGWR ASYNC" ## Primary DB IP:PPORT+4 ### TBCM STANDBY ENV ### STANDBY_USE_OBSERVER=Y CM_PORT=18632 ## $CM_SID.tip에 설정한 CM_UI_PORT와 동일하게 작성 LOCAL_CLUSTER_ADDR=172.16.59.111 ## local IP LOCAL_CLUSTER_PORT=15000
참고
observer user는 $TB_SID.tip 설정이 필요하지 않습니다.
6. tbdsn.tbr 설정
6.1 Primary Node
-- tibero
$ vi $TB_HOME/client/config/tbdsn.tbr
tsc_P=(
(INSTANCE=(HOST=localhost)
(PORT=8629)
(DB_NAME=tsc)
)
)
6.2 Standby Node
-- tibero
$ vi $TB_HOME/client/config/tbdsn.tbr
tsc_S=(
(INSTANCE=(HOST=localhost)
(PORT=8629)
(DB_NAME=tsc)
)
)참고
observer user는 tbdsn.tbr 설정이 필요하지 않습니다.
7. Observer 기동
$ su - obs $ tbcmobs -b TBCM OBSERVER MODE 7.1.1 (Build 303667) TmaxTibero Corporation Copyright (c) 2020-. All rights reserved. Tibero cluster manager observer started up. Local observer name is (OBSERVER:28632).
8. Primary CM 기동 및 resource등록
8.1 Primary CM 기동
$ su - tibero $ tbcm -b CM Guard daemon started up. import resources from '/home/tibero/tibero7/config/cm_res'... TBCM 7.1.1 (Build 303667) TmaxTibero Corporation Copyright (c) 2020-. All rights reserved. Tibero cluster manager started up. Local node name is (PRIMARY:18632).
8.2 리소스 등록
8.2.1 private network 등록
$ cmrctl show
Resource List of Node PRIMARY
=====================================================================
CLUSTER TYPE NAME STATUS DETAIL
----------- -------- -------------- -------- ------------------------
NO RESOURCE
=====================================================================
$ cmrctl add network --name net0 --ipaddr 172.16.59.110 --portno 29000
Resource add success! (network, net0)
$ cmrctl show
Resource List of Node PRIMARY
=====================================================================
CLUSTER TYPE NAME STATUS DETAIL
----------- -------- -------------- -------- ------------------------
COMMON network net0 UP (private) 172.16.59.110/29000
=====================================================================
8.2.2 public network 등록
$ cmrctl add network --name pub0 --nettype public --ifname ens33
Resource add success! (network, pub0)
$ cmrctl show
Resource List of Node PRIMARY
=====================================================================
CLUSTER TYPE NAME STATUS DETAIL
----------- -------- -------------- -------- ------------------------
COMMON network net0 UP (private) 172.16.59.110/29000
COMMON network pub0 UP (public) ens33
=====================================================================
8.2.3 cluster 등록
$ cmrctl add cluster --name cls0 --incnet net0 --pubnet pub0 --cfile /home/tibero/tibero7/config/cls0_cfile
Resource add success! (cluster, cls0)
$ cmrctl show
Resource List of Node PRIMARY
=====================================================================
CLUSTER TYPE NAME STATUS DETAIL
----------- -------- -------------- -------- ------------------------
COMMON network net0 UP (private) 172.16.59.110/29000
COMMON network pub0 UP (public) ens33
COMMON cluster cls0 DOWN inc: net0, pub: pub0
=====================================================================
8.2.4 cluster 기동
$ cmrctl start cluster --name cls0
MSG SENDING SUCCESS!
$ cmrctl show
Resource List of Node PRIMARY
=====================================================================
CLUSTER TYPE NAME STATUS DETAIL
----------- -------- -------------- -------- ------------------------
COMMON network net0 UP (private) 172.16.59.110/29000
COMMON network pub0 UP (public) ens33
COMMON cluster cls0 UP inc: net0, pub: pub0
cls0 file cls0:0 UP /home/tibero/tibero7/config/cls0_cfile
=====================================================================
8.2.5 service 등록
$ cmrctl add service --name tsc --cname cls0 --tscid 11 --obsip 172.16.59.111 --obsport 9050
Resource add success! (service, tsc)
$ cmrctl show
Resource List of Node PRIMARY
=====================================================================
CLUSTER TYPE NAME STATUS DETAIL
----------- -------- -------------- -------- ------------------------
COMMON network net0 UP (private) 172.16.59.110/29000
COMMON network pub0 UP (public) ens33
COMMON cluster cls0 UP inc: net0, pub: pub0
cls0 file cls0:0 UP /home/tibero/tibero7/config/cls0_cfile
cls0 service tsc DOWN Database, Active Cluster (auto-restart: OFF)
=====================================================================
8.2.6 DB 등록
$ cmrctl add db --name tsc_P --svcname tsc --dbhome /home/tibero/tibero7 --envfile /home/tibero/.bash_profile
Resource add success! (db, tsc_P)
$ cmrctl show
Resource List of Node PRIMARY
=====================================================================
CLUSTER TYPE NAME STATUS DETAIL
----------- -------- -------------- -------- ------------------------
COMMON network net0 UP (private) 172.16.59.110/29000
COMMON network pub0 UP (public) ens33
COMMON cluster cls0 UP inc: net0, pub: pub0
cls0 file cls0:0 UP /home/tibero/tibero7/config/cls0_cfile
cls0 service tsc DOWN Database, Active Cluster (auto-restart: OFF)
cls0 db tsc_P DOWN tsc, /home/tibero/tibero7, failed retry cnt: 0
=====================================================================
8.2.7 vip 등록
$ cmrctl add vip --name vip0 --node PRIMARY --svcname tsc --ipaddr 192.168.41.117/255.255.255.0 --bcast 192.168.41.255
Resource add success! (vip, vip0)
$ cmrctl show
Resource List of Node PRIMARY
=====================================================================
CLUSTER TYPE NAME STATUS DETAIL
----------- -------- -------------- -------- ------------------------
COMMON network net0 UP (private) 172.16.59.110/29000
COMMON network pub0 UP (public) ens33
COMMON cluster cls0 UP inc: net0, pub: pub0
cls0 file cls0:0 UP /home/tibero/tibero7/config/cls0_cfile
cls0 service tsc DOWN Database, Active Cluster (auto-restart: OFF)
cls0 db tsc_P DOWN tsc, /home/tibero/tibero7, failed retry cnt: 0
cls0 vip vip0 DOWN tsc, 192.168.41.117/255.255.255.0/192.168.41.255 (1)
failed retry cnt: 0
=====================================================================주의
root 계정에서 tbcm process 기동, tibero 계정에서 tibero process 기동해야 vip up 됨
9. 데이터베이스 생성
Primary Node에서 cm 기동 및 resource 등록이 완료되었다면 데이터베이스 생성을 합니다.
9.1 Primary DB nomount 기동
$ tbboot nomount Change core dump dir to /home/tibero/tibero7/bin/prof. Listener port = 8629 Tibero 7 TmaxTibero Corporation Copyright (c) 2020-. All rights reserved. Tibero instance started up (NOMOUNT mode).
9.2 데이터베이스 생성
$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> create database
user sys identified by tibero
maxinstances 8
maxdatafiles 100
character set MSWIN949
national character set UTF16
logfile
group 1 'log001.redo' size 100M,
group 2 'log002.redo' size 100M,
group 3 'log003.redo' size 100M
maxloggroups 255
maxlogmembers 8
archivelog
datafile 'system001.dtf' size 100M autoextend on next 100M maxsize unlimited
default temporary tablespace TEMP
tempfile 'temp001.dtf' size 100M autoextend on next 100M maxsize unlimited
extent management local autoallocate
undo tablespace UNDO
datafile 'undo001.dtf' size 100M autoextend on next 100M maxsize unlimited
extent management local autoallocate;
Database created.
참고
create database 가 정상적으로 수행되었다면, nomount로 기동되었던 tibero process는 모두 종료됩니다.
- tibero process 확인 명령어 : ps -ef | grep tbsvr
10. system_install.sh 수행
데이터베이스 생성이 완료되었다면, DB를 normal로 기동한 다음 $TB_HOME/scripts/system_install.sh을 수행합니다.
10.1 Primary DB 기동
$ su - tibero $ tbboot Change core dump dir to /home/tibero/tibero7/bin/prof. Listener port = 8629 Tibero 7 TmaxTibero Corporation Copyright (c) 2020-. All rights reserved. Tibero instance started up (NORMAL mode).
10.2 system_install.sh 수행
system_install.sh 수행 시, sys와 syscat 계정 비밀번호 입력이 필요합니다.
- sys 계정 초기 비밀번호 : tibero
- syscat 계정 초기 비밀번호 : syscat
$ cd $TB_HOME/scripts
[tsc_tibero7@kimmi scripts]$ sh system_install.sh
Enter SYS password:
--> 비밀번호 tibero 입력
Enter SYSCAT password:
--> 비밀번호 syscat 입력
Creating internal system tables...
Creating additional system index...
Creating client policy table ...
Setting case insensitive password...
Create system tables related to dbms_redact...
Creating text packages table ...
Inserting for text packages table ...
Creating the role DBA...
Creating system users & roles...
Creating example users...
Creating virtual tables...
Granting public access to _VT_DUAL...
Creating the system generated sequences...
Creating internal dynamic performance views...
Creating outline table...
Creating system tables related to dbms_job...
Creating system tables related to dbms_lock...
Creating system tables related to dbms_parallel_execute...
Creating system tables related to scheduler...
Creating system tables related to server_alert...
Creating system tables related to tpm...
Creating system tables related to tsn and timestamp...
... (중략)...
Setting system_install.sh parameter...
Done.
For details, check /home/tibero/tibero7/instance/tsc_P/log/system_init.log.
11. 임시 테이블 생성
$ tbsql sys/tibero
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
SQL> create table tibero.tsc_sync_test (c1 number, dt date default sysdate);
Table 'TIBERO.TSC_SYNC_TEST' created.
SQL> insert into tibero.tsc_sync_test(c1)
select level from dual connect by level < 100;
99 rows inserted.
SQL> commit;
Commit completed.
SQL> select count(*) from tibero.tsc_sync_test;
COUNT(*)
----------
99
12. 데이터 동기화
Primary DB와 Standby DB 데이터 동기화를 위해 Primary DB를 종료합니다. 이후 Data file, Control file, Redo file, Archive file, .passwd 파일을 Standby DB로 복사해줍니다. (scp/sftp 활용)
12.1 Primary DB & CM 종료
$ tbdown immediate Tibero instance terminated (IMMEDIATE mode). $ tbcm -d Tibero instance terminated (IMMEDIATE mode).
12.2 파일 복사
$ scp -r tbdata tbarch tibero@172.16.59.111:/home/tibero tibero7@172.16.59.111's password: c1.ctl 100% 77MB 123.7MB/s 00:00 c2.ctl 100% 77MB 165.2MB/s 00:00 redo001.redo 100% 50MB 160.3MB/s 00:00 redo002.redo 100% 50MB 170.2MB/s 00:00 redo011.redo 100% 50MB 123.0MB/s 00:00 redo012.redo 100% 50MB 108.6MB/s 00:00 redo021.redo 100% 50MB 121.9MB/s 00:00 redo022.redo 100% 50MB 141.2MB/s 00:00 redo031.redo 100% 50MB 102.6MB/s 00:00 redo032.redo 100% 50MB 91.3MB/s 00:00 redo041.redo 100% 50MB 51.7MB/s 00:00 redo042.redo 100% 50MB 40.4MB/s 00:01 system001.dtf 100% 512MB 36.7MB/s 00:13 undo001.dtf 100% 512MB 104.0MB/s 00:04 temp001.dtf 100% 512MB 14.9MB/s 00:34 usr001.dtf 100% 512MB 96.6MB/s 00:05 tpr_ts.dtf 100% 60MB 89.8MB/s 00:00 .passwd 100% 88 35.5KB/s 00:00 log-t0-r0-s1.arc 100% 512 291.7KB/s 00:00 log-t0-r0-s2.arc 100% 1511KB 55.1MB/s 00:00 log-t0-r0-s3.arc 100% 50MB 83.8MB/s 00:00