
select * from v$flash_recovery_area_usage;

DB 정상 종료 후 MOUNT 단계에서 noarchivelog 모드로 변경 후 DB를 OPEN 해준다.

RMAN을 이용한 백업파일 위치 확인
show parameter db_recovery_file_dest

RMAN 접속
rman target /
/ 의 의미는 이미 os의 oracle이라는 계정이 검증되었기 때문에 따로 인증체크가 필요없다.

RMAN을 통해 백업받은 정보
list backup;

RMAN 설정 확인
show all;
- CONFIGURE CONTROLFILE AUTOBACKUP ON; : control file 백업이 자동으로 된다.

control file이 가지고 있는 data file 과 temp file 정보 확인
report schema;

백업 삭제
delete backup;

CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default -- 기본값 데이터파일 백업위치
CONFIGURE CONTROLFILE AUTOBACKUP ON; # default -- 컨트롤파일을 자동으로 백업
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default -- 컨트롤파일 백업위치, 위치설정이 안되어있으면 기본값 백업위치로 백업된다

show parameter db_recovery_file_dest
데이터파일 백업의 위치 수정
configure channel device type disk format '/home/oracle/backup/rman/%U_%T';
컨트롤파일 오토백업 위치 수정
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/home/oracle/backup/rman/%F';
위치 수정후 백업 수행

백업 컨트롤파일 피스
Piece Name: /home/oracle/backup/rman/c-1228797102-20240920-0a
백업 데이터파일 피스
Piece Name: /home/oracle/backup/rman/0l35ghml_1_1_20240920
%U의 의미 : %u_%p_%c의 조합
1) %u : 백업셋 번호와 백업셋이 생성된 시간을 조합한 8자리 번호
2) %p : 백업셋내의 백업 피스 번호. 1 부터 시작하고 백업 피스가 만들어 질때마다 1씩 증가
3) %c : 중복된 백업 피스셋 내에서의 백업피스의 복제번호
%T의 의미 : YYYYMMDD
특정 backupset 번호의 백업 파일만 삭제
delete backupset 번호;
데이터파일 백업을 기본값으로 원복
configure channel device type disk CLEAR;
컨트롤파일 오토백업 기본값으로 원복
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK CLEAR;
압축을 이용해서 백업
backup as compressed backupset database;


백업위치 기본값은 그대로 유지한채 일시적으로 백업 위치를 변경할때
- %d : 데이터베이스 이름
- include current controlfile : control file이 autobackup on이 안되어있다면 해당 키워드로 control file도 같이 백업 받을 수 있다.
backup as compressed backupset format '/home/oracle/backup/rman/%d_%U_%T' database include current controlfile;

수동으로 채널을 설정 후 백업받는 방법(9i 이전까지의 방법, 고인물 방법)
run {
allocate channel c1 type disk format '/home/oracle/backup/rman/%d_%U_%T';
backup as compressed backupset database include current controlfile;}
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
컨트롤파일이 가지고 있는 백업정보하고 실제 물리적인 백업정보를 체크
crosscheck backup;
expired 된 백업정보 확인
list expired backup;
expired된 백업 삭제
delete expired backup;
DB 정상 종료 후 example 데이터파일 삭제로 장애유발
DB STARTUP 하지만 데이터파일이 없기 때문에 오류발생(MOUNT 단계)
RMAN으로 접속 후 오류 확인
list failure;
오류에 대한 adviser 요청
advise failure;

repair 하는 스크립트를 preview로 확인
repair failure preview;

RMAN이 자동으로 repair 하도록 요청
repair failure;
- DB OPEN 까지 도와준다.
rman의 전체 파라미터 확인
show all;

특정 파라미터 확인
show maxsetsize;

backup set의 크기를 제한하는 파라미터
maxsetsize를 변경
configure maxsetsize to 600m;

- maxsetsize를 변경후 backup database 해보면 오류가 나는걸 확인할 수 있는데 사유는 데이터파일들 중 600m 보다 큰 크기의 데이터파일이 있기 때문이다.
report schema;

- 다시 maxsetsize 값을 900m으로 변경 후 백업셋을 받아보면 정상적으로 백업이 된다.

- 백업은 되었지만 백업셋이 나뉘어져서 만들어진걸 확인할 수 있다.

configure maxsetsize clear;configure channel device type disk maxpiecesize 100m;
piecesize 값을 조절 후 백업을 받으면 piece 값이 제한적이기 때문에 이전에는 1개의 piece에 들어있던 데이터들이 여러 piece에 분산되어있다.

특정 테이블스페이스가 어떤 피스에 있는지 확인
list backup of tablespace system;

maxpiecesize 값 초기화
configure channel device type disk clear;
전체 환경은 변경하지 않은채 특정채널로 파라미터 변경
run {
allocate channel c1 device type disk maxpiecesize 100m;
backup as compressed backupset database;}