Tibero

Tibero 핫백업 데이터 이관

ksk04 2025. 6. 7. 16:56
- AS_IS | TO_BE 간 컨트롤 파일 경로가 다른 상태에서 진행

AS_IS

설치 정보

버전 Tibero 7.0 설명

엔징경로 /home/tibero/tibero7 엔진 기본경로
Data 경로 /home/tibero/tibero7/database/tibero/ 데이터 파일 , 리두로그 저장경로
컨트롤 파일 경로 /home/tibero/tibero7/database/tibero/c1.ctl 컨트롤 파일 경로
백업경로 /backup 백업 파일들을 저장하는 경로

TO_BE

설치 정보

설치 정보

버전 Tibero 7.0 설명

엔징경로 /home/tibero/tibero7 엔진 기본경로
Data 경로 /home/tibero/tibero7/database/tibero/ 데이터 파일 , 리두로그 저장경로
컨트롤 파일 경로 /ctl/c1.ctl 컨트롤 파일 경로
백업경로 /backup as_is의 백업 파일들을 가지고 온 경로

AS_IS 에서 begin backup

  1. tablespace 조회
-- SQL*Plus formatting
SET LINESIZE 150
SET PAGESIZE 50
SET TRIMOUT ON
SET TRIMSPOOL ON
SET FEEDBACK OFF

-- 컬럼 포맷 지정
COLUMN tablespace_name FORMAT A20
COLUMN file_name FORMAT A60
COLUMN size_mb FORMAT 999,999
COLUMN max_size_mb FORMAT 999,999
COLUMN autoextensible FORMAT A10

-- 메인 쿼리
SELECT
    t.tablespace_name,
    d.file_name,
    d.bytes / 1024 / 1024 AS size_mb,
    d.autoextensible,
    d.maxbytes / 1024 / 1024 AS max_size_mb
FROM
    dba_tablespaces t
JOIN
    dba_data_files d
ON
    t.tablespace_name = d.tablespace_name
ORDER BY
    t.tablespace_name;

#temp tablespace 조회
SELECT tablespace_name, file_name, bytes/1024/1024 AS size_mb
FROM dba_temp_files;
  • 결과
TABLESPACE_NAME      FILE_NAME                                                     SIZE_MB AUTOEXTENS MAX_SIZE
-------------------- ------------------------------------------------------------ -------- ---------- --------
SYSSUB               /home/tibero/tibero7/database/tibero/syssub001.dtf                320 YES           1,024
SYSTEM               /home/tibero/tibero7/database/tibero/system001.dtf                210 YES           1,024
TEST3_TBS            /home/tibero/tibero7/database/tibero/test3_tbs01.dbf              200 YES           1,024
TEST_TBS             /home/tibero/tibero7/database/tibero/test_tbs01.dbf               100 YES             500
UNDO                 /home/tibero/tibero7/database/tibero/undo001.dtf                  200 YES           1,024
USR                  /home/tibero/tibero7/database/tibero/usr001.dtf                   100 YES           1,024

  1. archive log 모드 확인
archive log list;
  1. begin backup 실행 (데이터 파일 , 리두로그 백업)
ALTER DATABASE BEGIN BACKUP;
!cp /home/tibero/tibero7/database/tibero/*.dtf /backup
!cp /home/tibero/tibero7/database/tibero/*.log /backup
  1. backup 모드 끄기
ALTER DATABASE END BACKUP; 
  1. 백업 받는 시점의 리두로그 스위치
ALTER SYSTEM SWITCH LOGFILE;
  1. 백업된 데이터 파일 조회
SELECT * FROM V$BACKUP; 
  1. 백업된 데이터파일 조회
!ls /backup 
  1. 컨트롤 파일 백업
ALTER DATABASE BACKUP CONTROLFILE TO TRACE AS '/backup/crectl.sql'
    REUSE         -- 동일 파일 존재 시 기존 파일을 덮어쓴다. 
    NORESETLOGS; -- 로그를 리셋하지 않는다.
  1. 온라인 리두로그를 스위치후 백업
alter system switch logfile;
! cp /home/tibero/tibero7/database/tibero/archive/*.arc  /backup

10 .passwd 파일 백업

cd $TB_HOME/database/$SID
ll -al .passwd  # 데이터 경로에서 
cp .passwd /backup
  1. 백업된 파일들 확인
ll /backup
  1. to_be 로 백업 폴더 옮긴 뒤 확인
ll /backup
  1. to_be 에서 /backup 경로에서 파일들 각각의 경로로 옮기기

버전 Tibero 7.0 설명

Archive 경로 /home/tibero/tibero7/database/tibero/Arch 아카이브 로그 저장 경로
Data 경로 /home/tibero/tibero7/database/tibero/ 데이터 파일 , 리두로그 저장경로
컨트롤 파일 경로 /ctl/c1.ctl 컨트롤 파일 경로
백업경로 /backup as_is의 백업 파일들을 가지고 온 경로
cp /backup/*.arc /home/tibero/tibero7/database/tibero/arch/
cp /backup/*.dtf /home/tibero/tibero7/database/tibero/
cp /backup/*.passwd /home/tibero/tibero7/database/tibero/
cp /backup/*.log /home/tibero/tibero7/database/tibero/
  1. nomount 에서 컨트롤 파일 생성
tbboot nomount
@/backup/crectl.sql
  1. mount 상태로 변경
tbdown
tbboot mount
  1. mount 정상적으로 컨트롤 파일 생성시 데이터파일의 마지막 scn으로 변경
 ALTER DATABASE RECOVER AUTOMATIC DATABASE; 
  1. tbboot시 resetlogs 옵션으로 db open 상태로 변경
alter database open resetlogs 
# or
tbboot resetlogs \\q
  1. temp tablespace 조회 tablespace는 조회가 되나 데이터파일은 조회가 안됨
SQL> SELECT tablespace_name, file_name, bytes/1024/1024 AS size_mb
FROM dba_temp_files;      2
0 row selected.

# tablespace 조회
SQL> SELECT NAME FROM V$TABLESPACE;

NAME
--------------------------------------------------------------------------------------------------------------------------------
SYSTEM
UNDO
TEMP
USR
SYSSUB
TEST_TBS
TEST3_TBS
DEV_TBS01

  1. temp tablespace 데이터파일 재연결
ALTER TABLESPACE TEMP ADD TEMPFILE '/home/tibero/tibero7/database/tibero/temp001.dtf' size 10m reuse;