아래
내용은 입력 작업 중 디스크풀로 인하여 데이터베이스 서버 장애가 발생한 상황에서 복구를 위한 방법이다.(DB가
손상되지 않은 상황 임.)
데이터
입력 중 디스크 공간 부족 오류가 발생하였을 때, 복구 방법
1. 해당 디스크에 여유공간을 확보한다.
2. [csql –S DB명]이 정상 작동하는지 확인한다.
- cub_commdb –O : DB 상태 확인
- cubrid server stop DB_name : 기동 중 이면 정지
- csql –S DB_name : csql DB 접속
- cubrid server start DB_name : 기동
- csql –u dba/user DB_name
- csql> create table aaa(a int, b char(100);
- csql> insert into aaa values(1, ‘CUBRID’);
- cd $CUBRID/log/server: 에러 로그 확인 è 데이터 입력 후 볼륨 및 기타 오류가 있는지 확인.
일반적으로
복구 전과 복구 후, 비교하였을 때, lgar, lgar_t 파일이
추가로 생성되며 lginf 파일의 용량은 감소한다.
그러므로
방법1의 여유공간은, 기존 남은 공간에 최소로 “기본 lgar 파일의 크기*3” 만큼 추가로 공간을 확보한다면 방법2가 오류 없이 수행되며 이때, 기존에 commit된 Data 까지 복구가 가능하다.
이 방법은
CUBRID2008 R2.1에서 진행되었으며, cubrid.conf의 log_max_archives와 checkpoint_every_npages의
설정 값이 default일 때 진행하였다.