フレンド! サーバー上のData Guard構成に、フィジカル・スタンバイ・データベースを持つ多くのプライマリ・データベースがあります。単一サーバー上の各プライマリ・データベースと、単一サーバー上の各フィジカル・スタンバイ。 EM12cでは、プライマリデータベースをバックアップするスケジューラジョブを設定しました。残念ながら、サーバーが本当にビジー状態の場合、Agentはバックアップの実行を中断し、スケジュール通りにバックアップを取っていません。DBMS_SCHEDULERジョブによるOracleフィジカル・スタンバイのバックアップ
したがって、私たちはEM12cからバックアップジョブを無効にし、手順DBMS_SCHEDULER.CREATE_JOB
を使用してフィジカルスタンバイでバックアップを実行します。
フィジカルスタンバイはプライマリデータベースの読み取り専用データベースとブロック単位のコピーであるため、プライマリでスケジュールジョブを作成してスタンバイに適用する必要があります。
質問は次のとおりです。それは可能ですか?そして、もしそうなら、スクリプトでこれを実現する方法は?
このような何か:
それが解決のための最高のが、このタスクであるソリューション、ことはできませんか? 各サーバーに1つのスクリプトでcronタスクを作成せずにこの問題を解決する方法はありますか?リカバリカタログデータベースからグローバルスクリプトを1つ使用することはできますか?
クリスは、フィジカル・スタンバイ・データベースからスケジュール・ジョブを実行できないと述べました。 だから、私はcrontabで自分のlinuxスクリプトをスケジュールします。 私のLinuxのスクリプトは次のとおりです。
#! /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
私は、リカバリ・カタログからバックアップグローバル・スクリプトを呼び出すために、各ホスト上のLinuxのファイルを作成する必要はありません。すべてのホストで集中バックアップの実行スケジュールを構成することは可能ですか?あるホストからすべてのデータベースホストにsshを設定し、バックアップのために私のlinuxスクリプトを実行できますか?
ご回答いただきありがとうございます。
フィジカル・スタンバイ・データベースはスケジューラー・ジョブを実行しません。ただし、通常はRMANスクリプトはOSスケジューラからスケジュールされますが、リカバリカタログからグローバルスクリプトを保存して呼び出すことができます。ストアドスクリプトの使用に関するドキュメントを参照してください。https://docs.oracle.com/データベース/ 121/BRADV/rcmcatdb.htm#BRADV89669 –
こんにちは、Kris。お返事をありがとうございます。私はフィジカル・スタンバイ・データベースからスケジュール・ジョブを実行できないことを理解しています。私はcrontabで私のLinuxスクリプトをスケジュールし、私は新しい質問が..)私は問題の本文にそれを書くでしょう.. – Sergey
私は私の質問を解決しました!少し後で答えてください.. – Sergey