Previous Topic: 前提条件の確認Next Topic: 制御ファイルのリストア


テーブルスペースのリストア

データベースのテーブルスペースが失われたり破損したりした場合は、ファイル レベル復旧を実行してリストアできます。ファイル レベル復旧が成功した後、手動でテーブルスペースを回復する必要があります。

次の手順に従ってください:

  1. root ユーザとしてターゲット マシンにログインします。
  2. データベースが使用可能であることを確認します。
  3. 必要なテーブルスペースをオフラインにします。

    例:テーブルスペースの名前は、MYTEST_DB であるとします。以下のコマンドを入力して、テーブルスペースをオフラインにします。

    $ sqlplus "/ as sysdba"
    SQL> alter tablespace MYTEST_DB offline;
    
  4. 指定したテーブルスペース MYTEST_DB のデータ ファイルをすべてリスト表示します。
    SQL> select file_name, tablespace_name from dba_data_files where tablespace_name='MYTEST_DB';
    
    FILE_NAME
    
    --------------------------------------------------------------------------------
    
    TABLESPACE_NAME
    
    ------------------------------
    
    /opt/oracle/oradata/lynx/MYTEST_DATA01.dbf
    
    MYTEST_DB
    
  5. リストア ウィザードを使用して、テーブルスペースのデータ ファイルをリストアします。リストア プロセスの詳細については、「Linux ノードでファイル レベル復旧を実行する方法」を参照してください。
  6. リストア ウィザードに関する以下の情報を指定し、ジョブをサブミットします。
    1. ファイルやフォルダを選択する場合、テーブルスペースの必要なデータ ファイル名を入力して検索します。

      例:テーブルスペース「MYTEST_DB」の「MYTEST_DATA01.dbf」を入力して検索します。

    2. [ターゲット マシン]ページで、以下の情報を入力します。
      • [元の場所にリストアする]を選択します。
      • ターゲット Oracle サーバのホスト名または IP アドレスを入力します。
      • ターゲット Oracle サーバの root ユーザ名とパスワードを入力します。
      • [競合の解決]オプションの[既存ファイルを上書きする]を選択します。
  7. データ ファイルがリストアされた後、Oracle データベースのテーブルスペースを回復します。
    SQL>recover tablespace MYTEST_DB;
    Specify log:{<RET>=suggested | filename | AUTO | CANCEL}
    Auto
    
  8. 指定したテーブルスペースをオンラインにします。
    SQL>alter tablespace MYTEST_DB online;
    

テーブルスペースが正常に復旧します。