DB/Tibero

[Tibero] flashback을 통한 drop된 테이블 복구하기

빡상이 2023. 8. 8. 12:57
반응형

Drop(DDL)된 테이블에 대해 원복 쿼리를 통한 복구 기능

 

티베로에서 복구기능을 사용하기 위해서는 USE_RECYCLEBIN 파라미터값이 Y여야한다.

1. $TB_SID.tip 에서 파라미터 수정하기

2. ALTER SYSTEM SET USE_RECYCLEBIN=Y;


1. $TB_SID.tip 에서 파라미터 수정하기

엔진 설치경로인 $TB_HOME/config/$TB_SID.tip 파일 수정

 

파라미터 수정

 

2. ALTER SYSTEM SET USE_RECYCLEBIN=Y;

test@tibero:/tibero/tibero6/config $ tbsql sys/tibero

tbSQL 6

TmaxData Corporation Copyright (c) 2008-. All rights reserved.

Connected to Tibero.

ALTER SYSTEM SET USE_RECYCLEBIN=Y;
SYSTEM ALTERED.

테스트용 계정 생성

//테스트 테이블(TIBERO.FLASHBACK_TEST) 생성

DROP USER alexpark CASCADE;
TBR-7069: Specified user 'alexpark' was not found.

CREATE USER alexpark IDENTIFIED BY 1234;
User 'alexpark' created.

GRANT DBA TO alexpark;
Granted.

conn alexpark/1234
CONNECTED TO TEST.

CREATE TABLE FLASHBACK_TEST (C1 NUMBER, C2 NUMBER, C3 NUMBER);
TABLE 'FLASHBACK_TEST' CREATED.

테스트 테이블(TIBERO.FLASHBACK_TEST)에 데이터 입력

declare
begin
for i in 1..10000 loop
insert into flashback_test values (i,i,i);
end loop;
end;
/
PSM COMPLETED.
COMMIT;
COMMIT COMPLETED.

테스트 테이블(TIBERO.FLASHBACK_TEST) 건수 조회

SELECT COUNT(*) FROM FLASHBACK_TEST;
COUNT(*)
----------
10000
1 ROW SELECTED

테스트 테이블(TIBERO.FLASHBACK_TEST) Drop

DROP TABLE TEST.FLASHBACK_TEST;
TABLE 'FLASHBACK_TEST' DROPPED.
//명시적 commit 수행
COMMIT;
Commited.

//테이블 삭제 확인
SELECT COUNT(*) FROM FLASHBACK_TEST;
TBR-8033: SPECIFIED SCHEMA OBJECT WAS NOT FOUND.
AT LINE 1, COLUMN 23:

Drop 된 테스트 테이블(TIBERO.FLASHBACK_TEST)을 Recycle bin 에서 조회

Drop 된 테스트 테이블(TIBERO.FLASHBACK_TEST)을 복구

FLASHBACK TABLE FLASHBACK_TEST TO BEFORE DROP;
FLASHBACKED.

테스트 테이블(TIBERO.FLASHBACK_TEST) 건수 조회

 

반응형