Background Image
조회 수 21889 추천 수 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
번호 분류 제목 글쓴이 날짜 조회 수
46 CCI/DB API CCI-API 에서 OID 사용 예제 file 남재우 2009.07.01 24861
45 CCI/DB API CCI-API 사용 예제 file 남재우 2009.07.01 25103
44 PHP CUBRID_기술문서_CUBRID PHP 함수 unisql_ 계열 cubrid_로 변환하기 file 남재우 2009.06.23 22355
43 PHP cubrid_fetch_all 함수 추가하기 2 남재우 2009.06.16 20828
42 기타 Oracle의 SYS_CONNECT_BY_PATH 함수 흉내내기 CUBRID_DEV 2009.06.15 26528
41 Java CUBRID에서 log4sql을 사용하자 정병주 2009.06.12 44305
40 기타 오래 걸리는 질의 및 동일 시간에 수행 중인 질의 추출하기 손승일 2009.05.26 20067
39 Java jsp용 jdbc 샘플입니다. file 시난 2009.05.25 47608
38 Java iBATIS framework with CUBRID file 웁쓰 2009.05.19 54548
37 기타 CUBRID와 타DBMS의 python 사용방법 비교 cubebridge 2009.05.19 29522
36 Java SQuirreL SQL Client에서 CUBRID 사용하기 3 Prototype 2009.04.18 34534
35 Java Power*Architect 에서 CUBRID 사용하기 Prototype 2009.04.18 23879
34 Java AquaDataStudio 에서 CUBRID 사용하기 Prototype 2009.04.18 23667
33 Install CUBRID Manager 사용시 로그인에 대하여 1 file admin 2009.04.01 42043
32 Java Spring framework 사용 예제 admin 2009.04.01 53130
31 기타 connect by 구현 방법 admin 2009.04.01 52374
30 기타 python 에서 broker_log_top 사용 1 admin 2009.04.01 17831
29 기타 오라클 개발자를 위한 CUBRID 개발 안내 1 admin 2009.04.01 49822
28 Linux HP-UX에서 CUBRID 사용을 위한 kernel 설정값 조정 1 admin 2009.04.01 54144
27 Linux cron을 이용한 백업 자동화 admin 2009.04.01 33122
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9

Contact Cubrid

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