사용자 관리 백업 (User - Managed Backup)
▶사용자가 자체적으로 백업 <--이걸 중점적으로 알아둬야 합니다.원리를 안다는게 중요한거지요. 네네~!
- User Managed Backup
- 이곳에서 말하는 장애는 DB가 손상되어 STARTUP이 되지 않는 상태를 말합니다.
- 그것을 대비하여, 백업이라는 것을 수행해야 합니다.
- DB 를 시작하기 위해 필요한 3가지의 파일은 제어파일, 데이터파일, 리두로그 파일입니다.
- 따라서, 위의 3가지 파일이 백업의 대상이 됩니다.
- DB는 동일한 이름의 파일이더라도, 생성된 버전이 틀린 파일이 있다면 복구가 되지 않습니다.
- [1] NO Archive Log Mode 에서의 백업
- 백업하는 날짜에 모든 데이터베이스 파일(제어, 데이터, 리두로그파일)을 통째로 백업 받습니다.
- 이 파일은 정상적으로 Shutdown 한 상태에서 복사한 파일을 의미합니다.
- 따라서, 나중에 문제가 생긴 파일이 생기면, 전체적인 파일을 복구합니다.
- 기존에 입력되었던 데이터베이스가 백업되지 않았다면, 복구가 불가능 합니다.
- 갱신이 잘 일어나지 않는 데이터베이스 혹은 테스트 데이터베이스일 경우에 사용합니다.
- 백업순서 >> 두 종류의 명령어가 사용됩니다. [O/S 명령어 (COPY), SQL 명령어]
- Shutdown(abort 를 하면 안됩니다)
- 모든 필수파일(Control File, Data File, +Redo log File은 옵션)을 복사합니다.
- 리두로그 파일이 옵션인 이유는 마운트 상태에서 재생성을 할 수 있기 때문입니다.
- 복사가 끝나면, DB를 다시 시작하면 됩니다. START UP
- DB를 종료했다고 해서, 이것을 CLOSED(Clean, Cold). 전체 적인 DB 구성요소를 받았다고 해서 Whole Database Backup 이라고 합니다.
- 단점
- 백업 시 DB를 내려야 합니다.
- 운영체제 명령등에 대한 디스크 쓰기 속도 등에 따라 DB 복구 시간이 달라집니다.
- 백업되지 않은 파일은 복구가 불가능합니다.
- 한달 전에 백업하고, 작업을 하다가 손상될 경우, 백업 이후 데이터는 복구가 불가능합니다.
- [2]Archive Log Mode 에서의 백업
- Closed Whole Database Backup 이 가능합니다. (DB종료 후에)
- Open Database Partial Backup 이 가능합니다.(DB운용 중에) > 부분적으로 백업 중
- 아카이브 로그 모드에서는 리두로그 파일은 백업 대상이 되지 않습니다.
- [1] 데이터 파일 백업 순서[테이블 스페이스 단위 백업]
- SQL > Alter tablespace [테이블스페이스 이름] begin backup; ◀백업모드라고 합니다.
- HOST > 테이블스페이스와 연관된 데이터파일을 운영체제에서 복사합니다.
- 만약 다중의 데이터파일이 있다면, SQL > Alter tablespace [테이블스페이스 이름] end backup;
- 위의 수행은 테이블스페이스의 수 만큼 해줍니다.
- 계속 DB가 운용 중인 환경입니다.
- 백업하고 있는 테이블스페이스도 액세스가 가능합니다.
- [그림1 > BEGIN BACKUP 과 END BACKUP]
- [2]CONTROL 파일 백업 순서
- SQL > Alter Database Backup Controlfile to ' 경로 지정' ;
- 이러한 것을 제어파일의 스냅샷이라고 합니다. 그 시점을 저장합니다.
- SQL > Alter Database Backup Controlfile to trace;
- 컨트롤파일을 재생성 할 수 있는 스크립트를 생성합니다.
- SQL > Alter Database Backup Controlfile to ' 경로 지정' ;
- 위의 백업과정을 하나하나 떼어보면, Partial백업이지만, 모든 것들을 백업한다면, Whole Database Backup 이 됩니다. 통째로 백업 받은거지요.
- 장점
- DB 운용 중에 백업을 받을 수 있습니다.
- 파일마다 갱신정보가 모두 다릅니다. 따라서 백업전략을 다양한 레벨로 할 수 있습니다.
- 이 말은, 상대적으로 갱신정보가 다른 테이블끼리의 백업 간격 조정이 가능합니다.
- CONTROL FILE은 데이터파일과는 별도로 백업을 받을 수 있습니다. 이 파일은 시스템파일이기 때문에 매우 중요합니다. 용량이 데이터파일처럼 크지 않기 때문에 , 자주자주 받는게 좋겠지요
- # 용어
- FULLbackup : 원본 (모든 블록)을 그대로 읽어서, 백업을 받습니다.
- Icremental 백업 (증분 저장 영역 관리 기능): 풀 백업과는 반대로 사용되는 용어이며, 이것은 이미 풀 백업을 받은 후에, 변경이 된 파일만 추가적으로 백업을 받는 것을 말합니다.
- Whole Back up 의 반대말은 Partial 이지요. 위에서 충분히 했으니까 대충. 알아들으셔.....
- Whole Database Backup
- Target Database가 열려 있거나 닫혀있을 수 있습니다.
모든 Datafile 및 Control file의 Backup - 부분 Database Backup
- Tablespace
Datafile
Control file
# 참고할만한 사이트 : http://werty4082.springnote.com/pages/1566250
▶User-Managed Backup 및 Recovery
- 운영 체제 명령으로 파일 Backup
- 운영 체제 명령으로 파일 Restore
- SQL 및 SQL*Plus 명령으로 Recovery
▶Database File 정보
- 데이터베이스 파일에 대한 정보를 볼 수 있는 딕셔너리의 종류들 입니다.
- V$Datafile : 마운트 상태에서도 볼 수 있습니다.
- DBA_DATA_FILES : 데이터베이스가 완벽하게 오픈 된 상태에서만 볼 수 있습니다.
- V$LOGFILE : 리두로그 파일에 대한 정보,
- V$CONTROLFILE : 컨트롤 파일에 대한 이름이나 경로를 제공합니다.
▶백업 방식
- NOARCHIVELOG 에서는 운용중에 복구할 수 없다는 점 , 명심하세요.
- ARCHIVELOG mode 에서는 운용 중이거나, 데이터베이스가 닫혀있어도 백업이 가능합니다.
▶일관성있는Whole Database Backup(Closed Database Backup)
- 반드시 백업해야 하는 파일은 Data File과 Control Files 입니다.
- 파라미터 파일과 패스워드 파일도 필요하고, 리두로그 파일도 필요하지만 필수 요소는 아닙니다.
- 장점
- 개념적으로 단순함
- 수행하기 쉬움
- 운영자 상호 작용이 거의 필요하지 않음 (명령문이 별로 없다는 말)
▶일관성있는 Whole Database Backup 생성
▶Opened Database Backup
- 데이터 운용모드가 아카이브 모드여야 합니다.
- 여전히 데이터파일과 컨트롤 파일은 반드시 백업해야 하며,
- 추가적으로 파라미터, 패그워드 파일을 받을 수 있습니다.
- 장점
- 높은 Database 가용성 유지 관리
- Tablespace 또는 Datafile 레벨에서 수행 가능
- 백업 전략을 트랜잭션 볼륨에 따라서 별도로 수행할 수 있습니다.
- 또한 백업되지 않은 일부 파일을 백업할 수 있습니다.
- 중단 없는 업무 운영 지원
- 단점
- 백업본 자체만으로는 STARTUP을 할 수 없습니다.
- 리두로그를 모두 놓아놓지 않았을 경우에는 완전 복구가 불가능할 수 있습니다.
- 백업본의 안정성 면에서는 Whole Database Backup에 비해서 떨어집니다.
- 비용 측면에서도 추가적인 저장공간이 필요하기 때문에 부담이 있을 수 있습니다.
- 요구사항
- Open Database Backup 선택사항
▶Online Tablespace Backup 생성
- 145번이 현재의 커런트 시퀀스 번호이고, 144번의 Datafile 2를 복사 중입니다.
- 백업된 Datafile 1은 143 이 시퀀스 번호입니다. 모든 파일이 백업되었을 경우와, 현재가 시퀀스 번호가 다를 수 있습니다. 이것은 Open Database Backup의 특징이라고 할 수 있습니다.
- 위의 명령어 중 !CP는 안됩니다. 대신 탐색기를 이용해서 복사하면 되요 ㅡㅡㅋ
▶Online Tablespace Backup 종료
- 백업이 끝나면 위의 명령으로 종료를 해주어야 합니다.
▶백업 상태 정보
- V$BACKUP : 백업 중인 파일의 정보를 알 수 있습니다.
▶Online Tablespace Backup 실패
- 오픈을 하지 못하고, 마운트 단계까지만 수행 됩니다.
- 위의 에러는 백업모드에서 빠져나올 수 있도록END BACKUP을 실행하면, 마운트 상태에서 수동으로 DB 를 오픈할 수 있습니다.
▶Online Backup 종료
- V$BACKUP을 질의하여 Backup 상태 확인
- ALTER DATABASE 명령을 실행하여 상태를 변경하고 Header의 고정을 취소
- Oracle 9i에서 다음 명령을 사용
▶Read Only Tablespace Backup
- 특정 테이블스페이스를 읽기전용으로 만들었습니다.
- 읽기전용 테이블스페이스는 DML이 불가능해지며, DML을 못하게 하는 이유는 백업에서 제외시키기 위함입니다.
- 만드는 이유
- 이미 갱신되었고, 앞으로도 갱신될 가능성이 거의 없는 테이블 스페이스를 읽기/쓰기 상태로 두면, 백업할 때마다 그 만큼의 용량대로 백업을 받아야 합니다. 용량이 낭비되는거지요.
- 하지만, 읽기 전용으로만 만들면, 한 번 , 두 번 정도만 받으면 되니까 그만큼 백업 속도면에서나 용량 측에서도 좋겠습니다. :D
- 단, 읽기 전용으로 만든 이후에는 최소한 1번이상은 백업을 해주어야 합니다.
▶Read Only Tablespace Backup 문제
- Tablespace를 Read Only로 변경한 후에는 한번의 Backup만 필요
- 처음 백업 받기 위한 스크립트에서도 백업을 할 수 있도록 추가를 해주어야 합니다. - Tablespace를 Read Write로 변경한 후에는 해당 Tablespace에 대한 정상적인 Backup 일정 재개
- Control file은 Read Only Tablespace를 올바르게 식별해야 하며 그렇지 않은 경우 Read Only Tablespace Recovery 필요
- R/O의 테이블스페이스를 백업받을 때에는 Control Files 도 백업 받아서, 일관성을 유지해야 합니다.
▶Logging and Nologging 옵션
- 테이블 스페이스를 생성할 때 NOLOGGING 속성을 줄 수 있습니다.
- create tablespace ... ... ... nologging
- INSERT, SELECT, CREATE 등에 옵션을 주게되면, 리두로그 기록을 하지 않게 할 수 있습니다.
- SQL* LOADER : 비 오라클 데이터베이스의 데이터베이스를 가져올때도 마찬가지로 NOLOGGING을 할 수 있습니다.
- 단점
- 복구가 불가능 해집니다.
- 하지만. 위의 동작들이 굳이 복구가 필요하진 않습니다.
- 만들다가 실패하면 다시 하면 되니까요 ㅡ.,ㅡ
▶수동 Control file Backup
- Binary 이미지 생성
- 텍스트 Trace file 생성
- ▲이거 만들어지는 경로가 시험에 나옵니다. ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
▶초기화 Parameter file Backup
▶DBVERIFY Utility를 사용하여 Backup 확인
- 백업한 파일을 따로 검사할 수 있는 유틸리티입니다.
- 운용중이거나 백업파일 모두 검사할 수 있습니다.
- 이것은 DATA FILE 만 검사합니다.
- RMAN은 이러한 과정을 내부에서 자체적으로 수행하므로, 이러한 유틸리티가 필요하지 않습니다.
- 윈도우에서 사용하는 오라클이라도 COMMAND 에서 수행해야 합니다.
▶DBVERIFY 명령 행 인터페이스
-
외부명령행 유틸리티
-
Restore 전에 Backup Database 또는 Datafile이 적합한지 확인하는 데 사용
-
데이터 손상 문제 발생 시 진단에 도움
-
-
검사결과는 화면에 한 번 디스플레이 되고 끝이납니다. 하지만 로그파일을 지정해놓으면 나중에 로그 파일을 보고, 검사 결과를 볼 수 있습니다.
'Web Develop Tech > Oracle9i Fundmantal II' 카테고리의 다른 글
ORACLE - Database Archive 모드 구성 (0) | 2012.10.26 |
---|---|
ORACLE - Database Archive 모드 구성 [실습] (0) | 2012.10.26 |
ORACLE - 사용자 관리 백업 [10장] - 실습 (0) | 2012.10.26 |
ORACLE - 백업과 복구 실습 - 090414(화) - Recovery Manager (0) | 2012.08.25 |
ORACLE - 백업과 복구 실습 - 090415(수) - Recovery Manager 계속 (0) | 2012.08.25 |