차례:
비디오: Oracle RAC Components | Basic cluster components 2024
오라클 12c Recovery Manager를 사용하여 좋은 백업으로 데이터베이스를 앞뒤로 움직일 수 있습니다. 그러나 큰 데이터베이스를 이전 시점으로 복원하는 것은 시간 소모적이며 지루한 작업입니다. 또한, 충분히 멀리 돌아 가지 않으면 처음부터 다시 시작해야합니다.
다음과 같은 이유로 데이터베이스를 플래시백 할 수 있습니다.
-
반복 테스트 시나리오: 개발 환경에서 테스트중인 애플리케이션이 있다고 가정 해보십시오. 응용 프로그램을 실행할 때마다 데이터가 변경됩니다. 다음 테스트 전에 데이터를 원래 값으로 재설정하려고합니다. 플래시백은이를위한 훌륭한 도구입니다.
-
논리적 데이터 손상: 누군가가 실수로 생산 환경에서 잘못된 프로그램을 실행했을 수 있습니다. 실수가 일어나기 전에 한 지점으로 돌아 가야합니다. 데이터 복구로이 작업을 수행 할 수 있지만 플래시백은 더 빠르고 쉽습니다.
-
배포 절차: DDL 및 DML을 사용하여 프로덕션 스키마의 모든 종류의 객체를 업데이트하는 코드의 새 버전을 릴리스하는 중일 것입니다. 응용 프로그램이 목표 성능 매개 변수에서 제대로 작동하지 않으면 다시 롤백 할 수 있습니다.
플래시백 데이터베이스는 전체 데이터베이스 복구를 수행하지 않고 트랜잭션을 롤백 할 수있는 추가 정보를 기록하여 작동합니다. 뿐만 아니라 매우 빠르게 작동합니다. Flashback Database는 다음과 같은 빠른 기능을 제공합니다.
-
데이터베이스를 읽기 전용 모드로 열어서 충분히 멀리 돌아 왔는지 확인할 수 있습니다.
-
멀지 않은가? 빨리 뒤로 롤백하십시오.
-
너무 먼가요? 다시 앞으로 굴립니다.
SQL * Plus 또는 Oracle Enterprise Manager 내에서 간단한 명령으로 이러한 모든 작업을 수행 할 수 있습니다. RMAN을 사용하기 위해서는 여러 개의 전체 복원과 그 사이에 많은 시간이 필요합니다.
Flashback 데이터베이스 구성 및 활성화 방법
Flashback Database는 Flashback 기능과 다르게 작동합니다. 플래시백 데이터베이스를 사용하여 Oracle은 플래시백 로그라는 파일을 저장합니다. 플래시백 로그 에는 블록을 이전 시간으로 롤백하는 데이터가 있습니다. 플래시백 로그는 flash_recovery_area에 저장됩니다.
여기에 두 가지 변수가 작용합니다.
-
얼마나 뒤로 가고 싶습니까?
-
해당 기간 내에 귀하의 데이터베이스에서 얼마나 많은 데이터가 변경 되었습니까?
뒤로 물러나고 변경 사항이 많을수록 더 많은 플래쉬 백 로그가 생성됩니다. 해당 로그를 저장할 충분한 공간이 있는지 확인하십시오. 그렇지 않으면 아무 곳이나 깜박이지 않습니다.
Flashback Database 구현을 고려하는 경우 db_recovery_file_dest_size 매개 변수를 확장해야 할 수 있습니다.얼마나 확대 할 것인지는 데이터의 양과 데이터의 양에 달려 있습니다.
새로운 플래시 복구 영역 크기 = 현재 플래시 복구 영역 크기 + 총 데이터베이스 크기 × 0. 3
본질적으로, 당신은 대략 30 %를 예약하려고합니다. 플래쉬 백 로그를위한 플래시 복구 영역의 전체 데이터베이스 크기.
그 이후부터는 플래시백 로그가 차지하는 공간을 모니터링 할 수 있습니다.
플래시 복구 영역을 구성한 후 다음 단계를 수행하여 데이터베이스의 플래시백 기능을 켭니다.
-
플래시백을 얼마나 원한다고 생각하십시오.
기본값은 24 시간 (또는 1, 440 분)입니다. 최대 48 시간 동안 플래시를 복원 할 수 있기를 원한다고 가정 해보십시오.
-
매개 변수 db_flashback_retention_target으로 얼마나 멀리 가고 싶은지 구성하십시오. 이를 수행하려면 SQL에 SYSDBA로 로그인하고
를 입력하십시오.이 예에서 시간은 2, 880 분 (48 시간)으로 설정됩니다.
귀하가 선택한 기간 동안 다음을보아야합니다.
시스템이 변경되었습니다.
-
데이터베이스를 종료하고 마운트 모드로 다시 시작하십시오.
-
다음을 입력하여 데이터베이스를 플래시백 모드로 전환하십시오.
다음을 확인하십시오:
데이터베이스가 변경되었습니다.
-
다음을 입력하여 데이터베이스를 엽니 다.
다음과 같이 표시됩니다.
데이터베이스가 변경되었습니다.
이제 데이터베이스가 플래시백 모드로 설정되었으므로 플래쉬 백 창에서 언제든지 플래시백 할 수 있습니다.
Oracle 12c 데이터베이스 롤백 방법
데이터베이스를 다시 플래싱해야 할 때 걱정하지 마십시오. 이 과정은 비교적 쉽습니다.
데이터베이스를 다시 깜박하면 데이터베이스가 반환하도록 선택한 시점 이후 발생한 모든 변경 사항을 제거합니다. 이 고려 사항을 가볍게 생각하지 마십시오.
다음과 같이 입력하십시오:
OLDEST_FLASHBACK_TIM -------------------- 14 -AUG-2013 06: 34: 03
db_flashback_retention_target은 해당 시간 프레임의 한계에 관한 것이어야합니다. 공간이 문제가 아니며 데이터베이스가 이전 플래시백 로그를 제거하지 않은 경우 더 길어질 수 있습니다.
사용자가 약 1 시간 전에 데이터베이스에서 실수로 HR 스키마를 삭제했다고합시다.
데이터베이스를 종료하십시오.
-
마운트 모드로 다시 시작하십시오.
-
다음을 입력하십시오. 여기서 1은 플래시 할 시간입니다.
-
다음과 같이 표시됩니다:
플래시백이 완료되었습니다.
영구 보관하기 전에 플래시백을 확인하십시오.
-
다음을 확인하십시오:
데이터베이스가 변경되었습니다.
결과에 만족하면 6 단계로 이동하십시오. 시간이 만족스럽지 않으면 9 단계로 건너 뜁니다.
-
데이터베이스를 종료하십시오.
-
데이터베이스를 마운트 모드로 시작하십시오.
-
Resetlogs로 데이터베이스를 엽니 다.
-
다음을 확인하십시오:
데이터베이스가 변경되었습니다.
데이터베이스를 마운트 모드로 다시 시작하십시오.
-
다음을 입력하십시오.
-
다음을 확인하십시오:
미디어 복구가 완료되었습니다.
데이터베이스를 마운트 모드로 시작하십시오.
-
타임 스탬프로 다시 깜박이면 12 단계로 이동하십시오. 이전에 작성한 복원 지점으로 다시 플래시하려면 13 단계로 이동하십시오.
복원 지점에 대한 자세한 내용은 근처의 "Using 복원 지점 "사이드 바를 참조하십시오.
다음을 입력하십시오.
-
다음과 같이 표시됩니다:
Flashback complete.
복원 지점으로 다시 플래시하려면 다음을 입력하십시오.
-
다음과 같이 표시됩니다:
플래시백이 완료되었습니다.