export, import 테스트

eungjj·2023년 11월 22일

- TIBERO

목록 보기
3/8

동기 매니저님한테 아래 시나리오 받았다
한번 시도해보라고 주셨으니 해봤다!!! 감사요

  1. DB구축
  • User 2개 생성 (user1, user2)
  • user1은 TBS_USER1_001.dtf
  • user2는 TBS_USER2_001.dtf
  • 각 유저에 테이블 3개와 각 테이블에 인덱스 1개씩 생성 (샘플 데이터도 있어야 함)
  1. export 수행
  2. full=y
  3. usermode (user1 또는 user2)
  4. table mode (아무 테이블이나)
  5. rows=n 모드 통해 오브젝트 DDL만 export (이때 script=y도 사용해야 로그에 DDL문이 남음)
  6. import 수행
  7. drop user user1 cascade, drop user user2 cascade 후 full=y tbimport 수행

0. DB 구축

DATA는 LOOP 문 써서 많이 넣을까 하다가 취소..



create tablespace test1
datafile '/home/tibero/tibero_data/eun1/data/USER1_001.dtf' size 500M autoextend off;

create user user1 identified by tibero
default tablespace test1;



create tablespace test2
datafile '/home/tibero/tibero_data/eun1/data/USER2_001.dtf' size 500M autoextend off;

create user user2 identified by tibero
default tablespace test2;


create table user1.T1 (A1 number);
insert into user1.T1 values(1), (2), (3), (4), (5);

create table user1.T2 (A1 number);
insert into user1.T2 values(1), (2), (3), (4), (5);

create table user1.T3 (A1 number);
insert into user1.T3 values(1), (2), (3), (4), (5);

--check
select table_name 
from user_tables;


create table user2.T4 (A1 number);
insert into user2.T4 values(1), (2), (3), (4), (5);


create table user2.T5 (A1 number);
insert into user2.T5 values(1), (2), (3), (4), (5);


create table user2.T6 (A1 number);
insert into user2.T6 values(1), (2), (3), (4), (5);

commit;


conn user1/tibero;

-- 인덱스 생성
CREATE INDEX t1_idx01
ON user1.T1(A1);

CREATE INDEX t2_idx01
ON user1.T2(A1);

CREATE INDEX t3_idx01
ON user1.T3(A1);


conn user2/tibero;

-- 인덱스 생성
CREATE INDEX t4_idx01
ON user2.T4(A1);

CREATE INDEX t5_idx01
ON user2.T5(A1);

CREATE INDEX t6_idx01
ON user2.T6(A1);

commit;

당연히 알지만....^^

*DDL : 스키마/도메인/테이블/뷰/인덱스를 정의/변경/제거할 때 사용하는 언어
테이블을 생성하고, 테이블 내용을 변경하고, 테이블을 없애버리는 것.
[CREATE, ALTER, DROP ]

*DML : Query(질의)를 통해서 저장된 데이터를 실질적으로 관리하는 데 사용한다.
테이블 안의 데이터 하나하나를 추가하고 삭제하고 수정하는 것.
[INSERT, DELETE, UPDATE]

3. USER mode

user1 export

tbexport username=sys password=tibero sid=tibero1 port=8629 file=test1n.dat log=test1n.log  user=user1  script=y

import

tbimport username=sys password=tibero sid=tibero1 port=8629 file=test1n.dat log=test1n.log script=y fromuser=user1 touser=user2

import 잘됐는지 확인

 SELECT * FROM USER_INDEXES;

잘됐음.

5. 오브젝트 DDL만 export

rows=n 옵션 추가 export

tbexport username=sys password=tibero sid=tibero1 port=8629 file=test1n.dat log=test1n.log  user=user1 rows=n script=y

import

tbimport username=sys password=tibero sid=tibero1 port=8629 file=test1n.dat log=test1n.log script=y rows=n fromuser=user1 touser=user2

원래 있던 테이블 T4, T5, T6 제외하고, 나머지 T1,T2,T3 는 data 없이 DDL만 들어온 것 확인함. 근데 index도 들어오는디

export, import 할 때 뭐가 쫓아오는지 뭐가 달려오는지 공부 필요.....


--참고
http://www.gurubee.net/lecture/4167

0개의 댓글