Background Image
조회 수 21901 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄


데이터베이스를 운영하다 보면 데이터베이스를 다른 서버 혹은 동일서버에 재구성해야 할 경우가 생긴다.
이러한 경우,CUBRID에서는 아래와 같은 두 가지 방법을 제공하고 있다.

1. 백업파일을 이용하여 restore하는 방법
2. CUBRID 유틸리티인 unloaddb&loaddb를 이용하는 방법

백업파일이 존재하지 않는 경우, 성능테스트 혹은 운영체제에 맞게끔 page크기를 변경해야 하는 경우 unloaddb&loaddb를 사용하여 재구성할 수 있다.

참고사항) db page는 DB를 생성할 때 --db-page-size=SIZE  옵션을 주어 변경하여 생성할 수 있다. (최소값은 4K, 최대값은 16K(기본값)
예: cburid createdb --db-page-size=16K testdb en_US



1. 언로드하기(unloaddb)
Migration에서 기본인 unloaddb방법이다. CUBRID는 -S (stand-alone mode) 와 -C(client-server mode)를 제공하는 -S가 조금 더 빠르게 수행한다.
$ cubrid server stop db-name
$ cubrid unloaddb -S -v db-name (-v옵션은 진행상태를 표시)

[결과]
아래와 같이 unload하는 진행화면이 출력된다.
-------------------------------+--------------------------------
    Class Name                 |          Total Instances
-------------------------------+--------------------------------
    mmdb                       |           0 (100% / 100%)
    mmdb1                      |           0 (100% / 100%)
    mmdb2                      |           0 (100% / 100%)
    mmdb3                      |           0 (100% / 100%)
0 objects dumped.

정상적으로 완료가 된 겨우, db-name_schema, db-name_objects, db-name_indexes, db-name_trigger파일이 생성된다.
해당 파일은 editor프로그램을 이용하여 오픈하여 확인할 수 도 있다.


2. 데이터베이스 생성 및 볼륨구성하기
데이터베이스를 생성한다. generic볼륨을 생성훼 DATA, INDEX, TEMP볼륨을 생성해 준다.

$ cubrid createdb db-name ko_KR.utf8  (512M의 generic볼륨을 생성)
$ cubrid addvoldb -S --db-volume-size=사이즈 -p data db-name (data 볼륨을 추가)
$ cubrid addvoldb -S --db-volume-size=사이즈 -p index db-name (index볼륨을 추가)
$ cubrid addvoldb -S --db-volume-size=사이즈 -p temp db-name (temp볼륨을 추가)


3. 로드하기(loaddb)
db-name서버가 정지된 상태에서 아래 명령어를 수행한다. (현 경로에 unloaddb파일이 있어야 한다. 경로가 다른경오 file path까지 명시해주어야 한다.)
$ cubrid loaddb -u dba -s db-name_schema -i db-name_indexes -d db-name_objects -v db-name
  • 스키마 파일(database-name_schema): 언로드 작업에 의해 생성된 파일로서, 데이터베이스에 정의된 스키마 정보를 포함하는 파일이다.
  • 객체 파일(database-name_objects): 언로드 작업에 의해 생성된 파일로서, 데이터베이스에 포함된 레코드 정보를 포함하는 파일이다.
  • 인덱스 파일(database-name_indexes): 언로드 작업에 의해 생성된 파일로서, 데이터베이스에 정의된 인덱스 정보를 포함하는 파일이다.
  • 트리거 파일(database-name_trigger): 언로드 작업에 의해 생성된 파일로서, 데이터베이스에 정의된 트리거 정보를 포함하는 파일이다.
  • 사용자 정의 객체 파일(user_defined_object_file) : 대용량 데이터 입력을 위해 사용자가 테이블 형식으로 작성한 입력 파일이다(가져오기용 파일 작성 방법 참고).

Warning

 

--no-logging 옵션을 사용하면 loaddb 를 수행하면서 트랜잭션 로그를 저장하지 않으므로 데이터 파일을 빠르게 로드할 수 있다. 그러나 로드 도중 파일 형식이 잘못되거나 시스템이 다운되는 등의 문제가 발생했을 때 데이터를 복구할 수 없으므로 데이터베이스를 새로 구축해야 한다. 즉, 데이터를 복구할 필요가 없는 새로운 데이터베이스를 구축하는 경우를 제외하고는 사용하지 않도록 주의한다. 이 옵션을 사용하면 고유 위반 등의 오류를 검사하지 않아 기본 키에 값이 중복되는 경우 등이 발생할 수 있으므로, 사용 시 이러한 문제를 반드시 감안해야 한다.


(자세한 옵션은 http://www.cubrid.org/manual/ko/9.2.0/admin/admin_utils.html#unload-load 를 참조)

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
17 기타 [주의사항] CUBRID에서의 BLOB/CLOB 사용시 백업 및 복구에 대한 주의 점 admin 2011.07.14 52791
16 기타 자주 발생하는 큐브리드(cubrid) 에러 메시지 정리 admin 2011.07.14 81438
15 기타 select .. for update 처리를 위한 Stored Procudure 등록 및 사용법 남재우 2011.12.10 24872
14 기타 HA 환경 구성 시 데이터 복제 지연이 발생하는 경우 ECHO(7) port를 확인하자. 손승일 2012.11.29 26445
13 기타 CUBRID isolation level & Dirty Read 정만영 2015.05.29 11314
12 기타 콘솔에서 마이그레이션 하기. file 권호일 2015.06.19 13432
» 기타 CUBRID Migration방법(by unloaddb & loaddb) 주현 2015.07.01 21901
10 기타 알고 보면 쉬운 cubrid lockdb 유틸리티 file 김승훈 2015.12.08 12076
9 기타 CUBRID Migration Toolkit을 이용한 단계별 마이그레이션 진행 방법 file 진우진 2015.12.15 9542
8 기타 데이터 확인에 정규표현식을 사용 해 보자. 성진 2016.03.01 12759
7 기타 CSQL 인터프리터 사용방법 정만영 2016.03.03 16636
6 기타 PyCharm을 이용한 CUBRID, Django 연동 가이드 file 진우진 2016.04.11 8152
5 기타 따라하면 쉬운 compactdb 사용법 file 허서진 2017.07.01 2528
4 기타 큐브리드10.1 에서 윤초 지원 옵션 사용하기 최광일 2017.09.13 1419
3 기타 ERwin을 이용한 CUBRID 리버스 엔지니어링 file 민순 2020.07.13 3462
2 기타 ERwin을 이용한 CUBRID 포워드 엔지니어링 file 민순 2020.07.14 2316
1 기타 [10.2 path] - 생성된 view구문을 'show create view' 수행 시 정상적으로 출력되지 않던 이슈 patch 큐브리드_김주현 2020.11.09 886
Board Pagination Prev 1 2 3 4 Next
/ 4

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales