친구! 서버의 Data Guard 구성에는 물리적 스탠바이 데이터베이스가있는 많은 기본 데이터베이스가 있습니다. 단일 서버의 각 기본 데이터베이스와 단일 서버의 각 물리적 대기 EM12c에서는 기본 데이터베이스 백업을 위해 스케줄러 작업을 구성했습니다. 불행히도 서버가 실제로 사용 중이면 에이전트는 백업 실행을 일시 중지하고 스케줄에 따라 백업하지 않습니다.DBMS_SCHEDULER 작업을 통해 Oracle 물리적 대기를 백업하십시오.
그래서 우리는 EM12c에서 백업 작업을 비활성화했으며 절차 DBMS_SCHEDULER.CREATE_JOB
을 사용하여 물리적 대기에서 백업을 수행하려고했습니다.
Physical Standby는 기본 데이터베이스의 읽기 전용 데이터베이스 및 블록 단위 복사본이므로 Primary에서 예약 작업을 만들어 대기로 적용해야합니다.
그래서 질문은 : 가능합니까? 그리고 예, 그렇다면 스크립트에서 이것을 어떻게 실현할 수 있을까요 ?? 이 같은
뭔가 : 그것은 가능하지 않으면
check database_role
if role='PHYSICAL STANDBY'
then execute backup script
else nothing to do..
,이 작업 해결을위한 최상의하는 솔루션입니다? 각 서버에 단일 스크립트로 cron 작업을 만들지 않고이 문제를 해결할 수있는 방법이 있습니까? 복구 카탈로그 데이터베이스에서 하나의 전역 스크립트를 사용할 수 있습니까?
Kris는 실제 대기 데이터베이스에서 예약 된 작업을 실행할 수 없다고 말했습니다. 그래서 crontab을 사용하여 리눅스 스크립트를 예약 할 것입니다. 내 리눅스 스크립트입니다 :
#! /usr/bin/bash
LOG_PATH=/home/oracle/scripts/logs; export LOG_PATH
TASK_NAME=backup_database_inc0; export TASK_NAME
CUR_DATE=`date +%Y.%m.%d-%H:%M`; export CUR_DATE
LOGFILE=$LOG_PATH/$TASK_NAME.$CUR_DATE.log; export LOGFILE
rman target/catalog rmancat/<pswd>@rmancat script 'backup_database' log $LOGFILE
if [ $? -eq 0 ]
then
mail -s "$ORACLE_UNQNAME Backup Status: SUCCESS" [email protected]< $LOGFILE
exit 0
else
mail -s "$ORACLE_UNQNAME Backup Status: FAILED" [email protected]< $LOGFILE
exit 1
내 복구 카탈로그 백업 글로벌 스크립트를 호출하는 각 호스트에 리눅스 파일을 생성하지 않습니다. 모든 호스트에서 중앙 집중식 백업 실행 스케줄을 구성 할 수 있습니까? 한 호스트에서 모든 데이터베이스 호스트로 ssh를 구성하고 백업을 위해 내 리눅스 스크립트를 실행할 수 있습니까?
미리 답변 해 주셔서 감사합니다.
실제 대기 데이터베이스는 스케줄러 작업을 실행하지 않습니다. RMAN 스크립트는 대개 OS 스케줄러에서 예약됩니다 ... 그러나 복구 카탈로그에서 전역 스크립트를 저장하고 호출 할 수 있습니다. 저장 스크립트 사용에 대한 문서를 참조하십시오. https://docs.oracle.com/ database/121/BRADV/rcmcatdb.htm # BRADV89669 –
안녕하세요, Kris. 답장을 보내 주셔서 감사합니다. 필자는 물리적 대기 데이터베이스에서 예약 된 작업을 실행할 수 없음을 알고 있습니다. 나는 crontab로 나의 리눅스 스크립트를 스케쥴 할 것이고, 나는 새로운 질문을 가지고있다.) 나는 질문 본문에 그것을 쓸 것이다. – Sergey
나는 나의 질문을 해결했다! 나중에 조금 대답 해주세요. – Sergey