すべてのプロダクト
Search
ドキュメントセンター

:スタンドアロンのOracleデータベースの復元の準備

最終更新日:Oct 18, 2024

このトピックでは、スタンドアロンのOracleデータベースを復元する前に、移行先サーバーで行う必要のある準備について説明します。

概要

バックアップゲートウェイのインストール

データベースバックアップ (DBS) は、データベースゲートウェイ (DG) を使用して、オンプレミスデータベースまたはサードパーティのクラウドでホストされているデータベースにバックアップされたデータベースを復元します。 移行先サーバーにバックアップゲートウェイをインストールする必要があります。 詳細については、「バックアップゲートウェイのインストール」をご参照ください。

説明

DGを使用すると、オンプレミスデータベースをクラウドサービスに接続できます。 ポートをインターネットに公開する必要はありません。 DGは、プライベートネットワークに展開されたデータベースにリモートアクセスするためのデータベース接続サービスです。 詳細については、「」をご参照ください。Database Gatewayとは

データベースをホストする元のサーバーにデータベースを復元する場合は、データベースのバックアップ時に使用するバックアップゲートウェイを選択できます。

ソースOracleデータベースのバージョンを確認する

DBSを使用してOracleデータベースを復元する場合は、移行先サーバー上のOracleのバージョンが移行元Oracleデータベースのマイナーバージョンと同じであることを確認してください。

説明

たとえば、Oracle 11.2.0.4はOracle 11.2.0.1と互換性がありません。 移行元データベースが前述のバージョンのいずれかを採用し、移行先サーバーがもう一方を採用している場合、データの復元時にエラーが発生する可能性があります。 ソースデータベースとターゲットサーバーの両方に同じバージョンのOracleをデプロイすることを推奨します。

  • 次のコマンドを実行して、ソースデータベースのOracleバージョンを照会できます。

    su - oracle
    export ORACLE_SID=orcl;
    sqlplus / as sysdba
    select version from v$instance;

    次の出力は、Oracleバージョンが19.0.0.0.0であることを示します。

    ====================
    VERSION
    -----------------
    19.0.0.0.0
    ====================
  • ソースデータベースがマウント状態に達しない場合は、次のコマンドを実行してOracleバージョンを照会できます。

    su - oracle
    ORACLE_HOME/OPatch/opatch lsinv -oh $ORACLE_HOME |grep ^"Oracle Database"

SIDの作成

Oracle SIDは、サーバー上で一意である必要があります。 ターゲットOracleデータベースのSIDを作成する必要があります。

同じ名前のOracleデータベースを同じサーバー上で同時に実行することはできません。 次のコマンドを実行して、ソースデータベースを停止できます。

su - oracle
export ORACLE_SID=orcl;
sqlplus / as sysdba
shutdown abort;      /* You can also run the shutdown immediate; command.*/
exit;

次のコマンドを実行して、ソースデータベースが停止しているかどうかを確認できます。

ps -ef|grep pmon|grep orcl

上記のコマンドの出力が返された場合は、kill -9コマンドを実行してデータベースを停止できます。

データベース復元ディレクトリの作成

データベース復元ディレクトリを作成する前に、ソースデータベースが占有するストレージスペースのサイズを取得する必要があります。 復元のための十分な領域を確保するために、データベース復元ディレクトリ用に、ソースデータベースのサイズの少なくとも1.3倍、またはDBSの完全バックアップセットのサイズの5〜6倍を確保することをお勧めします。 DBSがバックアップ動作を実行するとき、データは圧縮される。

  • 次のコマンドを実行して、ソースデータベースのサイズを名前がoracleのユーザーとして照会できます。

    su - oracle
    export ORACLE_SID=orcl;
    sqlplus / as sysdba
    select sum(bytes) from ( select bytes from v$datafile union all select bytes from v$tempfile union all select bytes*members bytes from v$log);

    次の出力は、データベースのサイズが4,904,189,952バイトであることを示しています。

    =======================
    SUM(BYTES)
    ----------
    4904189952
    =======================
  • DBSコンソールで完全バックアップセットのサイズを確認できます。 DBSコンソールにログインします。 左側のナビゲーションウィンドウで、[バックアップスケジュール] をクリックします。 [バックアップスケジュール] ページで、ソースデータベースのバックアップスケジュールを見つけ、バックアップスケジュールの名前をクリックします。 左側のナビゲーションウィンドウで、[バックアップタスク] > [フルデータ] を選択します。 表示されるページで、完全バックアップセットのサイズを表示できます。 詳細については、「バックアップスケジュールの表示」をご参照ください。

  1. ディレクトリの作成

    mkdir -p /Oracle/data_bak

    たとえば、上記のコマンドを実行して、Oracleフォルダーにdata_bakという名前のディレクトリを作成できます。

    説明

    ディレクトリがすでに存在する場合は、DBSがデータを復元するときにディレクトリ内の元のデータが上書きされないように、ディレクトリが空であることを確認してください。

  2. 権限を付与します。

    1. 次のコマンドを実行して、$ORACLE_HOME/bin/Oracleファイルが属するユーザーグループを照会できます。

      ls -alh $ORACLE_HOME/bin/oracle

      次の出力は、$ORACLE_HOME/bin/Oracleファイルがoracle:oinstallユーザーグループに属していることを示しています。

      ====================
      -rwsr-s--x 1 oracle oinstall 421M Mar 15 03:04 /opt/oracle/product/19c/dbhome_1/bin/oracle
      ====================
    2. 次のコマンドを実行して、作成したディレクトリのユーザーグループを変更できます。

      chown -R oracle:oinstall /oracle/data_bak

データベースクライアントのディレクトリを取得する

ORACLE_HOMEは、Oracleデータベースがインストールされているディレクトリを指定します。

  1. CLIでsu - oracleコマンドを実行して、Oracleデータベースにログインします。

  2. ORACLEデータベースでecho Oracle_HOMEステートメントを実行し、ORACLE_HOMEの値を取得します。

    次の出力は、ORACLE_HOMEの値が /opt/oracle/product/19c/dbhome_1であることを示します。

    /opt/oracle/product/19c/dbhome_1