Forum Stats

  • 3,838,749 Users
  • 2,262,397 Discussions
  • 7,900,750 Comments

Discussions

表領域、データファイルおよび制御ファイルからの復元

2708473
2708473 Member Posts: 1

こんにちは。

【状況】

先日、"deinstallツール"をオプション無しで実行してしまい、

意図せずOracle Databaseをアンインストールしました。

DBFファイル、CTLファイル、REDOログ、archiveファイルは

deinstallツールを実行する瞬間までのものがそっくり残っている状況です。

なお、バックアップはありません。

【質問1】

アンインストール前の状態まで復旧したいのですが、そもそも可能でしょうか?

※前述のファイルを使ってDBを再構成することは可能でしょうか?

【質問2】

方法を教えてください。

(一般的なほかの方法の代用でも結構です。)

【環境】

oracle database 11g 11.2.0.1.0

windows server 2008 R2

Answers

  • hottate
    hottate Member Posts: 43 Blue Ribbon
    edited Jul 8, 2014 7:31AM

    初期化パラメータファイル(SPFILE)も残っているのであれば、トレースとかの出力先ディレクトリを確認して残っていたら(無かったら手作業で再作成して)、パッチレベルで同じバージョンの製品を再インストールして、oradimコマンドでサービスを再作成すれば復旧は可能かと思われます。

  • user12075536123
    user12075536123 Member Posts: 346
    edited Jul 17, 2014 9:39PM
    解決済かもしれませんが・・・
    
    > DBFファイル、CTLファイル、REDOログ、archiveファイルは
    > deinstallツールを実行する瞬間までのものがそっくり残っている状況です。
    > なお、バックアップはありません。
    
    ちょっと意味深な書き方をしていますね。
    残っているファイルは、オフラインバックアップ(コールドバックアップ)相当のものと思ってよいのでしょうか?
    
    =====
    
    > アンインストール前の状態まで復旧したいのですが、そもそも可能でしょうか?
    > ※前述のファイルを使ってDBを再構成することは可能でしょうか?
    
    バックアップがあれば、意外と簡単に復旧できます。
    バックアップは、オンラインバックアップ、オフラインバックアップのどちらでもかまいません。
    
    > 方法を教えてください。
    
    実機確認していませんが、以下で可能だと思います。
    
    (1)ソフトウェアのインストール
    ・Oracle のインストール
    
    (2)以下のいずれかの方法で pfile を用意
    ・残っている  pfile があれば、そのまま使用
    ・残っている spfile があれば、spfile から pfile を作成
    ・上述に該当ぜす、今回の DB を dbca でデータベースを作成した場合、script を保存しているのであれば、その中の pfile を使用
    ・上述に該当ぜす、アラートログファイルが残っている場合、デフォルト値以外のパラメータ値が確認できる。この情報から pfile を作成
    ・いずれにも該当しない場合、手動で pfile を作成
    
    ※用意した pfile を %ORACLE_HOME%\database に配置します
    
    (3)必要なディレクトリの作成
    ・pfile でパラメータに何かディレクトリを設定してあるのであれば、そのディレクトリを作成
    ・各種データベースファイルを配置するディレクトリを作成(deinstall 前と同じディレクトリ構成にした方が作業が簡単)
    
    ※各種データベースファイルを作成したディレクトリに配置します。
    ※万が一のことを考え、現在手元にあるファイルを移動させるのではなく、コピーして下さい
    ※手持ちのデータベースファイルは、復旧できるまで保存しておいた方がとよいと思います
    
    (4)oradim コマンドで Windows サービスを作成
    ・oradim コマンドで Windows サービスを作成します。
    ・oradim コマンドの引数の中に (2) で用意した pfile を指定。(spfile を指定するのはできなかったはず)
    
    ※サービスが作成できた時点で DB は open 状態まで起動しているではないかと思います。
    
    (5)必要であれば以下を作業
    ・(4) で作成したサービスの起動
    ・sqlplus で DB の起動
    ・pfile を使用しているので spfile を作成し、spfile を使用して起動し直す
    
    実機確認していませんが、これで復旧できると思います。
    復旧できない場合は、作業ログを貼り付けて頂ければ、状況が把握しやすいです。
    
This discussion has been closed.