티베로 이관 작업 절차

티베로 이관 작업 절차


/* 기존 DB 환경 파악 신규 DB설치시 NLS_CHARACTERSET, DB_BLOCK_SIZE 기존과 동일해야 데이터 import 시 오류없이 import 된다. */
/*1.  터미널에서 기존 db 접속후 환경 파악 */
/* 티베로 db 접속 */
/* tbsql 사용자/패스워드@sid */

tbsql sys/tibero@SID

/* DB_BLOCK_SIZE 확인 */
SHOW PARAMETER DB_BLOCK_SIZE

SQL> SHOW PARAMETER DB_BLOCK_SIZE
NAME                         TYPE     VALUE
---------------------------- -------- ----------------------------------------
DB_BLOCK_SIZE                INT32    8192

/* CHARACTER_SET 확인 */
SQL>  SELECT * FROM SYS._VT_NLS_CHARACTER_SET;

CHARACTERSET_NAME NCHAR_CHARACTERSET_NAME
----------------- -----------------------
MSWIN949          UTF16

/*2. 테이블 스페이스 생성 스크립트 실제테이블 스크립트 용량 계산 추출 */
set linesize 1000
set pagesize 50000
set trimspool on
spool create_tablespace.sql
SELECT 'create tablespace ' || TABLESPACE_NAME || ' datafile ''' || FILE_NAME || ''' size ' || BYTES || ' AUTOEXTEND ON NEXT 10485760'
       || ' LOGGING'
       || ' ONLINE'
       || ' PERMANENT'
       || ' EXTENT MANAGEMENT LOCAL AUTOALLOCATE'
       || ';' as table_space
FROM
  (
  SELECT E.TABLESPACE_NAME,E.FILE_NAME,E.BYTES, (E.BYTES-SUM(F.BYTES)) RESULT
  FROM DBA_DATA_FILES E, DBA_FREE_SPACE F
  WHERE E.FILE_ID = F.FILE_ID
     AND E.TABLESPACE_NAME NOT IN ('SYSTEM','UNDO','USR','SYSSUB')
  GROUP BY E.TABLESPACE_NAME, E.FILE_NAME, E.BYTES
  ) A;
spool off

/* 2-1. 참고 스크립트 백업시 테스트용도로 사용 스크립트만 백업시에는 테이블 스페이스 용량이 클필요가 없기 때문에 기본 10메가로 셋팅 */
set linesize 1000
set pagesize 50000
set trimspool on
spool create_tablespace_test.sql
SELECT 'create tablespace ' || TABLESPACE_NAME || ' datafile ''' || FILE_NAME || ''' size ' || 10485760 || ' AUTOEXTEND ON NEXT 10M'
       || ' LOGGING'
       || ' ONLINE'
       || ' PERMANENT'
       || ' EXTENT MANAGEMENT LOCAL AUTOALLOCATE'
       || ';' as table_space
FROM
  (
  SELECT E.TABLESPACE_NAME,E.FILE_NAME,E.BYTES, (E.BYTES-SUM(F.BYTES)) RESULT
  FROM DBA_DATA_FILES E, DBA_FREE_SPACE F
  WHERE E.FILE_ID = F.FILE_ID
    AND E.TABLESPACE_NAME NOT IN ('SYSTEM','UNDO','USR','SYSSUB')
  GROUP BY E.TABLESPACE_NAME, E.FILE_NAME, E.BYTES
  ) A;

spool off



/*3. 기존 DB 백업 */ 
-- 백업을 위한 디렉토리 생성
mkdir -p /home/tibero/backup
cd /home/tibero/backup

/* 스크립트만 백업 */
tbexport USERNAME=sys PASSWORD=tibero ip=백업할서버아이피 PORT=9027 SID=naqs FILE=full_backup.dmp log=full_backup_exp.log FULL=y rows=N SCRIPT=y

/* 전체 데이터 포함 백업 */
tbexport USERNAME=sys PASSWORD=tibero ip=백업할서버아이피 PORT=9027 SID=naqs FILE=full_backup.dmp log=full_backup_exp.log FULL=y SCRIPT=n

/*4. 신규티베로 db 설치 */
리눅스에 티베로 사용자 계정 생성
디폴트 홈디렉토리 변경 /data 밑에 tibero로 홈디렉토리 생성

useradd -m -d /data/tibero tibero
/* 티베로 계정 비밀번호 부여 */
passwd tibero
/* 사용자 전환 */
su - tibero

/* 티베로 리눅스 콘솔 모드에서 설치 */


/* 4.1 환경설정 */
export TB_HOME=/data/tibero/tibero7
export TB_SID=consultDB
export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib
export PATH=$PATH:$TB_HOME/bin:$TB_HOME/client/bin

/* 4.2 티베로 사용자 계정 홈디렉토리에 Tibero_7 리눅스 버전 파일을 티베로 사이트에서 받아서 올려 놓는다. */
tibero7-bin-FS02_PS03-linux64_4.18-292332-20250421060145.tar.gz

- 압축해제
tar -xvzf tibero7-bin-FS02_PS03-linux64_4.18-292332-20250421060145.tar.gz

cd /data/tibero/tibero7/license
license 폴더에 발급받은 라이센스 파일을 복사한다.

/data/tibero/tibero7/config/gen_tip.sh 파일을 실행한다.
이 명령이 실행되면 환경 파일(.tip)과 tbdsn.tbr, psm_commands 파일이 생성된다.
[tibero@bdtest-was01 config]$ ./gen_tip.sh
Using TB_SID "consultDB"
/data/tibero/tibero7/config/consultDB.tip generated
/data/tibero/tibero7/config/psm_commands generated
/data/tibero/tibero7/client/config/tbdsn.tbr generated.
Running client/config/gen_esql_cfg.sh
Done.

위와 같이 생성된다.

/* 4.3 Tibero 서버를 NOMOUNT 모드로 기동한다 */

cd /data/tibero/tibero7/bin

/* 아래의 명령어로 기동시킨다 */
tbboot nomount

/* 기동하면 아래의 메세지가 출력된다. */
Warning: The initialization parameter 'MEMORY_TARGET' value is greater than the physical system memory size. MEMORY_TARGET: 4294967296 Physical System Memory Size: 3843018752Excessive memory consumption may cause the system to slow down or malfunction. It is recommended to set the MEMORY_TARGET to a value less than the physical system memory size.
Listener port = 8629

Tibero 7  

TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (NOMOUNT mode).


/*4.4 tbSQL 유틸리티를 이용하여 데이터베이스에 접속한다. sys 사용자로 접속
tbsql sys/tibero

/* 아래와 같은 메세지가 나오면 접속 성공 */
tbSQL 7

TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.

SQL> 

/* 4.5 CREATE DATABASE문을 이용하여 원하는 데이터베이스를 생성한다. tibero 로생성한다. */
vi create_database.sql
/* 아래 내용을 파일로 만들어서 실행 */

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


@/data/tibero/create_database.sql

실행후 exit 로 종료

/* 티베로 중지후 기동 */
tbdown

tbboot

Warning: The initialization parameter 'MEMORY_TARGET' value is greater than the physical system memory size. MEMORY_TARGET: 4294967296 Physical System Memory Size: 3843018752Excessive memory consumption may cause the system to slow down or malfunction. It is recommended to set the MEMORY_TARGET to a value less than the physical system memory size.
Listener port = 8629

Tibero 7  

TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Tibero instance started up (NORMAL mode).

/* 4.6  .$TB_HOME/scripts 디렉터리에서 system.sh셸을 실행한다. 이 셸을 실행하면 현재 디렉터리에 있는
SQL 파일이 수행된다. SQL 파일을 수행하면 role, system user, view, package 등이 생성된다. 사용되
는 sys 및 syscat 계정에 대한 기본 암호는 각각 tibero, syscat이다. */


/* 4.7 Tibero의 설치가 정상적으로 완료되면 Tibero 프로세스가 실행된다. 이 프로세스는 다음의 명령어를 실
행하면 확인할 수 있다. */
 ps -ef |grep tbsvr


/* 설치한 데이터베이스 제거 */
다음은 리눅스 환경에서 수동으로 Tibero를 제거하는 순서에 대한 설명이다.
 1. Tibero를 종료한다.
 tbdown
 2. Tibero가 설치된 디렉터리를 포함한 모든 하위 디렉터리를 해당 운영체제의 명령어로 삭제한다.
 rm -rf $TB_HOME



/*5. 백업데이터 신규db 임포트*/
/* 데이터 임포트  */
tbimport username=sys password=tibero ip=임포트서버아이피 port=9027 sid=naqs file=full_backup.dmp log=full_backup_imp.log full=y script=n ignore=y dpl=y


/*6. 통계데이터 생성 */
set linesize 1000
set pagesize 50000
set trimspool on
spool create_gather_status.sql
select 
'EXEC DBMS_STATS.GATHER_SCHEMA_STATS (ownname => ''' || username || ''',method_opt => ''FOR ALL COLUMNS SIZE 10'',cascade => true, no_invalidate => false);'
from dba_users
where username not in ('SYS','TIBERO','SYSGIS','TIBERO1','SYSCAT','RDMS')
;
spool off

이 블로그의 인기 게시물

아파치 보안관련 기본설정

아파치서버설치 (modcluster) 적용 및 Wildfly 서버 이중화 구성 방법