構文 構文 構文 構文
用途 用途 用途 用途
リカバリ・カタログに格納されている既存のスクリプトを置換します。既存のスクリプトが ない場合は、REPLACE SCRIPTによりスクリプトが作成されます。
ストアド・スクリプト機能は、主として、実行頻度が高い
Recovery Manager
コマンドを集 めた共通リポジトリを提供します。スクリプトには、RUNコマンド内で有効なコマンドを使 用してください。スクリプトは即時には実行されず、EXECUTE SCRIPTコマンドを使用し て実行します。関連項目 関連項目関連項目
関連項目: backupCommands、restoreCommands、
maintenanceCommandsおよびmiscellaneousCommands句に含める コマンドを判断する方法は、
2-196
ページの「RUN」の構文図を参照して ください。関連項目関連項目関連項目 関連項目:
■ ストアド・スクリプトで使用できる各コマンドの説明は、
2-26
ページの「BACKUP」などの該当の項目を参照してください。
■
@
および@@
引数の詳細は、2-93
ページの「CREATE SCRIPT」を参照 してください。■
EXECUTE SCRIPT
コマンドの詳細は、2-118
ページの「EXECUTE SCRIPT」を参照してください。REPLACE SCRIPT
’
script_name
’ {
backupCommands restoreCommands maintenanceCommands miscellaneousCommands
}
制限事項と使用上の注意 制限事項と使用上の注意 制限事項と使用上の注意 制限事項と使用上の注意
■
REPLACE SCRIPT
は、Recovery Manager
プロンプトでのみ実行できます。■ ターゲット・データベースに接続していることが必要です。既存のスクリプトを置き換 える場合は、スクリプトの作成時と同じターゲット・データベースに接続する必要があ ります。
■
Recovery Manager
をCATALOG
コマンドライン・オプションまたはCONNECT CATALOGコマンドを通じてリカバリ・カタログに接続し、カタログ・データベースをオープンす る必要があります。
■
REPLACE SCRIPT
を実行してスクリプトを作成してから、これと同じスクリプトを複数 のターゲット・データベースに対して使用することはできません。特定のターゲット・データベースに接続してから、REPLACE
SCRIPT
を実行して、そのターゲット用のスク リプトを作成する必要があります。各スクリプトは、1
つのターゲット・データベース にのみ関連付けられます。■ @および@@コマンドは、REPLACE SCRIPT内では機能しません。
キーワードとパラメータ キーワードとパラメータ キーワードとパラメータ キーワードとパラメータ
ストアド・スクリプトで使用できる各コマンドの説明は、
2-26
ページの「BACKUP」などの 該当の項目を参照してください。構文の要素 構文の要素構文の要素
構文の要素 説明説明説明説明 REPLACESCRIPT
'script_name'
指定したストアド・スクリプトを新しいコマンドに置き換えます。REPLACE SCRIPT'script_name'(...)コマンドのカッコ内で使用できる文は、RUN コマンド内で使用できる内容と同じです。
すべてのストアド・スクリプトのリストを取得するには、SQL*Plusを使用してリ カバリ・カタログ・データベースにカタログ所有者で接続し、次の問合せを発行 します。
SELECT * FROM RC_STORED_SCRIPT;
注意 注意注意
注意: ストアド・スクリプトを実行するには、RUNコマンドのカッコ内で EXECUTESCRIPTを発行します。
関連項目関連項目関連項目
関連項目: RC_STORED_SCRIPTの詳細は、3-34ページの
「RC_STORED_SCRIPT」を参照してください。
例 例 例 例
リカバリ・カタログ・スクリプトの置換 リカバリ・カタログ・スクリプトの置換リカバリ・カタログ・スクリプトの置換
リカバリ・カタログ・スクリプトの置換: 例例例例 この例では、backup_fullという
2
つのリ カバリ・カタログ・スクリプトを作成します。各スクリプトの内容はそれぞれ異なり、別々 のターゲット・データベースに関連しています。#!/usr/bin/tcsh
rman TARGET SYS/oracle@prod1 CATALOG rman/rman@catdb << SCRIPT1
# Create a script called backup_full that you can use to back up target
# database prod1. If a script already exists with the name backup_full,
# then this command overwrites it.
REPLACE SCRIPT backup_full {
# uses configured channel for default device type BACKUP DATABASE;
} EXIT SCRIPT1
rman TARGET SYS/oracle2@prod2 CATALOG rman/rman@catdb <<SCRIPT2
# Creates a new script backup_full on database prod2. Even though it has the same name,
# this script is different from the backup_full script created on prod1 in the preceding
# example. Each catalog script is associated with one and only one target database.
REPLACE SCRIPT backup_full {
# uses configured sbt channel
BACKUP DEVICE TYPE sbt DATABASE PLUS ARCHIVELOG;
}
# runs the backup_full script RUN { EXECUTE SCRIPT backup_full; } EXIT
SCRIPT2