impを連続で実行する

複数のimpdpコマンド(データポンプのインポート)を一回のオペレーションで実行させるには、シェルスクリプトを使用することが一般的です。以下に具体的な例を示します。この例では、Linuxサーバ上でシェルスクリプトを作成し、複数のimpdpコマンドを順次実行します。

手順

  1. シェルスクリプトを作成
  2. 必要なimpdpコマンドをシェルスクリプト内に記述

例:シェルスクリプト

以下は、複数のimpdpコマンドを一度に実行するためのシェルスクリプトの例です。これは、異なるダンプファイルを異なるターゲットスキーマにインポートするシチュエーションを想定しています。

#!/bin/bash

# セットアップ
USERNAME="username"
PASSWORD="password"
TARGET_DB="DB23"
DIRECTORY="exp_dir"
LOG_DIR="/path/to/logs"

# インポート操作
impdp $USERNAME/$PASSWORD@$TARGET_DB schemas=Schema1 directory=$DIRECTORY dumpfile=dumpfile1.dmp logfile=$LOG_DIR/schema1_import.log remap_schema=SourceSchema1:TargetSchema1
impdp $USERNAME/$PASSWORD@$TARGET_DB schemas=Schema2 directory=$DIRECTORY dumpfile=dumpfile2.dmp logfile=$LOG_DIR/schema2_import.log remap_schema=SourceSchema2:TargetSchema2
impdp $USERNAME/$PASSWORD@$TARGET_DB schemas=Schema3 directory=$DIRECTORY dumpfile=dumpfile3.dmp logfile=$LOG_DIR/schema3_import.log remap_schema=SourceSchema3:TargetSchema3

echo "全てのインポート操作が完了しました。"

説明

  • USERNAMEPASSWORD:データベースへの接続に必要なユーザー名とパスワード。
  • TARGET_DB:インポート先のデータベース接続情報。
  • DIRECTORY:ダンプファイルを保管するOracle DIRECTORYオブジェクトの名前。
  • LOG_DIR:ログファイルを保管するディレクトリのパス。

それぞれのimpdpコマンドの詳細:

  • schemas:インポート先のスキーマ名。
  • directory:ダンプファイルが格納されているディレクトリ。
  • dumpfile:インポートするダンプファイルの名前。
  • logfile:インポートプロセスのログファイルの名前。
  • remap_schema:ソーススキーマからターゲットスキーマへのマッピング。

上記のスクリプトを使用して、異なるスキーマへのインポートをまとめて実行することができます。

スクリプトの実行

このスクリプトを実行可能なファイルにして実行します。

  1. ファイル作成(例:import_all.shというファイル名にします)
   vi import_all.sh
  1. スクリプトの内容を保存。
  2. 実行権限を付与
   chmod +x import_all.sh
  1. スクリプトを実行
   ./import_all.sh

これにより、複数のインポート操作が順次実行されます。必要に応じて、ログファイルを確認して、各インポート操作の進行状況と結果をモニタリングすることができます。

コメント

タイトルとURLをコピーしました