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

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
데이터베이스가 삭제되었거나, 다른 서버에 데이터베이스를 복사하고자 할때 백업파일만을 이용하여 데이터베이스를 복구할 수가 있다.

이경우 몇가지 전제조건이 필요하다.
  1. 백업당시와 동일한 DBMS 버젼
  2. 원본 데이터베이스와 동일한 디렉토리 구성

* 편의를 위하여 unix(linux 동일) 환경으로 설명하며, 윈도우 환경과 다른점은 아래와 같다.
   - 데이터베이스 등록정보 화일 명
      - databases.txt
   - 화일 패스
      - UNIX : 예) /database/demodb
      - WINDOWS : 예) D:databasedemodb
   - 환경 변수
      - UNIX : 예) $CUBRID
      - WINDOWS : 예) %CUBRID%

백업화일만을 이용하여 데이터베이스를 복구하는 순서는 다음과 같다.
  0. 예를 위하여 다음의 경우로 가정한다.
      - 데이터베이스 : CUBRID
      - 서버이름 : db_server
        서버이름 얻는 법
          - UNIX(LINUX), WINDOWS : hostname 의 수행 결과
      - 데이터베이스 이름 : demodb
      - 설치 위치 : /database/demodb, 로그는 /database/demodb/log
         여러 위치에 분산되어 있는 경우라도 문제없음.
  1. 백업당시와 동일한 DBMS 버젼 환경 마련
      이미 설치되어 있다면 상관없고, 그렇지 않다면 제품을 설치한다.
  2. 원 데이터베이스가 있던 위치와 동일한 디렉토리를 구성한다.
     % mkdir /database
     % mkdir /database/demodb
     % mkdir /database/demodb/log
     * UNIX(LINUX) 의 경우 적절한 권한을 주어야 할 수도 있다.
  3. 데이터베이스 등록정보 화일을 편집하여 데이터베이스 정보를 입력한다.
     이 정보는 원 데이터베이스의 위치 정보이며, 원 데이터베이스가 있던 서버의 $CUBRID_DATABASESES/databases 의 내용을 그대로 옮기면 되며, 다만 서버가 달라지는 경우 앞에서 세번째 내용이 서버이름이므로 이 값만 현재 서버의 서버이름으로 적으면 된다.
     % vi $CUBRID_DATABASES/databases.txt
       demodb   /database/demodb  db_server    /database/demodb/log
  4. 데이터베이스 백업화일을 임의의 위치에 복사한다. 이때 가장 마지막 백업본을 사용한다. 단 마지막 백업이 풀(level 0) 백업이 아닌 경우 현재 레벨 이전의 모든 백업본이 필요하다. 예를 들어 현재 백업본이 level 2 라면 level 0, level 1 모두 필요하다.
     디폴트로 백업시 백업화일명은 demodb_bk0v000 형식이며, 이때 bk 다음 v 앞의 숫자가 level 이다. 0v 이면 level 0 백업 화일이다.
     /tmp 아래에 복사한 것으로 가정.
  5. 데이터베이스 복구 명령을 수행한다. 마지막 백업이 level 0 일 경우에는 아래와 같이 수행한다.
     % cubrid restoredb -B /tmp -p demodb
     만약 마지막 백업이 level 2 라면 아래와 같이 수행한다.
     % restoredb -l 2 -B /tmp -p demodb
  6. csql 를 수행하여 정상 복구 여부를 확인한다.
     % csql -S demodb
       csql> ;exit

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
17 운영관리 SElinux 환경에서 CUBRID 사용하기 2 admin 2008.11.21 25305
16 운영관리 libjvm.so 찾지 못하여 서버 구동이 되지 않은 경우 admin 2008.11.21 23906
15 응용개발 Attempt to access a closed ResultSet(PreparedStatement) 오류 admin 2008.11.21 27569
14 응용개발 loadjava 사용 시 inner class 로딩은 어떻게? admin 2008.11.21 27327
13 운영관리 64bit OS 에서 사용가능한가요? admin 2008.11.21 17319
12 운영관리 데이터베이스를 다른 머신으로 옮기는 방법 admin 2008.11.21 26843
11 운영관리 HP-ux에서 jvm loading이 실패하는 경우 조치 사항 admin 2008.11.21 22278
10 응용개발 tomcat 5.5 버전 이상에서 dbcp(커넥션 풀링) 설정법 admin 2008.11.21 28354
9 질의작성 데이터 필드의 타입 변경하기 admin 2008.11.21 18226
8 질의작성 예약어를 테이블명이나 컬럼명으로 사용시 admin 2008.11.21 25895
7 응용개발 embedded sql 에서 char 사용시 주의 사항 admin 2008.11.21 18829
6 마이그레이션 MySQL의 limit 명령어 처리 1 admin 2008.11.21 31901
5 응용개발 응용프로그램에서 질의 처리시 commit/rollback 처리 문제 admin 2008.11.21 21194
» 운영관리 백업파일을 이용하여 데이터베이스가 없는 다른 서버에서 복구하는 방법 admin 2008.11.21 21452
3 질의작성 중복된 데이터에 대하여 일련번호를 붙이는 방법 admin 2008.11.21 16964
2 질의작성 중복된 데이터를 1개만 남기고 지우는 방법 admin 2008.11.21 17180
1 질의작성 select 결과중 몇개만 가져오는 방법 admin 2008.11.21 18418
Board Pagination Prev 1 ... 5 6 7 8 9 10 11 12 13 14 Next
/ 14

Contact Cubrid

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