オラクル4文差のデータベースのバックアップの回復を回復
HTTPS://がwww.cnblogs.com/andy6/p/5925433.html について学ぶ必要があります。
1バックアップ制御を使用してデータベースを回復する
このホワイトペーパーでは、次の4つを説明し
、復元
方法の違いを意味します:
1.バックアップ制御ファイルを使用してデータベースを回復
現行の制御ファイルが失われた場合、冷たい バックアップ 伝えるために使用された場合、制御ファイルの回復、 Oracleは 、SCNの回復の終わりとしてCONTROLFILEしないでください。
キャンセルするまで2.データベースを回復
手動でエンドポイントを指定して、あなたの現在のアクティブ/ REDOを紛失した場合。
3.キャンセルするまでバックアップ制御を使用してデータベースを回復します。
あなたが失われ、あなたの現行の制御および現在のすべてのアクティブ/ REDOを紛失した場合、それはあなたが最大の回復を達成することができ、自動的に行くアーカイブ・ログを適用します。
バックアップ制御ファイルを使用してキャンセルするまで4.データベースを回復します。
あなたは現行の制御および現在のアクティブ/ REDOを紛失した場合、すべての仕上げを復元するために、古いSCNをやり直す失いました。何のアプリケーションアーカイブログが存在しないので、すべてのデータが失われます。
制御ファイルのデータベースを復旧、バックアップを使用して理解するために、まず理解ケースCONTROLFILEバックアップを使用せずに、つまり、データベースを回復します。
通常では、データベースを回復するか、表領域を回復し、データファイルを復元する場合、Oracleは、現在のSCN制御ファイルの件名を記録し、REDOログおよびアーカイブREDOログエントリを使用し、SCNの「現行の制御レコードに関連するデータ・ファイル・ブロックを復元します"
そして、いくつかの例では、Oracleは制御ファイルにデータをリストアする必要がある現在のレコードSCNは、位置(例えば、制御ファイルがバックアップ制御され、または制御ファイルのベースとなって作成しトレースします。)この時間に依存するよりも、我々は必要バックアップ制御ファイルを使用して。リカバリー「現行の制御は、記録SCN」の制限によって影響されることはありません。この時間制限は、(SCNまで、時間まで)あなたの文から来る、または使用可能なアーカイブ・ログ(キャンセルされるまで)されます...
結果は以下の通りである: 結論:
古いデータベースのバックアップ、アーカイブ・ログとオンライン・ログが状況下で、すべてそのままを保存する場合の結果は、使用してデータベースを回復したり、バックアップ制御を使用してデータベースを回復し、描画することができます。データの損失
キャンセルがするまでだけで完全には回復しない
オンラインログファイルが不足しています: 通常のデータベース、起動時にエラーの場合: SQL> alter database open;
数据库已更改。 |
https://www.cnblogs.com/andy6/p/5925433.html 需要学习一下.
1 recover database using backup controlfile
本文主要介绍以下四种
恢复方式的含义与区别:
1. recover database using backup controlfile
如果丢失当前控制文件,用冷 备份的控制文件恢复的时候,用来告诉 oracle,不要以controlfile中的scn作为恢复的终点;
2. recover database until cancel
如果丢失current/active redo的时候,手动指定终点。
3. recover database using backup controlfile until cancel;
如果丢失当前controlfile并且current/active redo都丢失,会先去自动应用归档日志,可以实现最大的恢复;
4. recover database until cancel using backup controlfile;
如果丢失当前controlfile并且current/active redo都丢失,以旧的redo中的scn为恢复终点。因为没有应用归档日志,所有会丢失数据。
要理解recover database using backup controlfile,先理解 recover database,也就是说,不加using backup controlfile的情况。
在普通的recover database 或者 recover tablespace, recover datafile时, Oracle会以当前controlfile所纪录的SCN为准,利用archive log和 redo log的redo entry, 把相关的datafile 的 block恢复到“当前controlfile所纪录的SCN”
而某些情况下,Oracle需要把数据恢复到比当前controlfile所纪录的SCN还要靠后的位置(比如说,control file是backup controlfile , 或者 controlfile是根据trace create的。),这时候,就需要用using backup controlfile. 恢复就不会受“当前controlfile所记录的SCN”的限制。这时候的限制就来自于你的语句(until time , until scn),或者可用的archive log(until cancel) ...
结果如下: 结论:
可以得出结果,如果有旧的数据库备份,在归档日志和在线日志全部保存完好的情况下,使用recover database或recover database using backup controlfile。则不丢失数据
until cancel就是不完全恢复
在线日志文件丢失: 如果正常关闭数据库,然后启动时报错: SQL> alter database open;
数据库已更改。 |