Oracle データベースのオンライン バックアップ ジョブの内容と回答 BZUUniversity

Oracle Databaseオンライン・バックアップ・ジョブのドキュメント

オンライン バックアップの手順
(1) データ ディクショナリ dba_data_files を使用して、バックアップが必要なデータ ファイルと対応するテーブル スペースを見つけます。オプションのステップ。
(2) データディクショナリを使用する vバックアップ データファイルのバックアップ状況を確認します。オプションのステップ。ステータスは NOTACTIVE で、データはバックアップされていません。(3) altertablespacetables spacenamebeginbackup コマンドは、バックアップ対象の表スペースをバックアップ状態に設定します。(4) オペレーティング システムのコピー コマンドを使用して、テーブル スペースに対応するすべてのデータ ファイルをバックアップ メディアにコピーします。(5) altertablespacetables spacenameendbackup コマンドは、正常にバックアップされたテーブルスペースをバックアップ終了状態にリセットします。(6) 現在のREDOログファイルの情報をアーカイブログファイルに書き込みます。(7) データディクショナリvバックアップを使用して、データファイルのバックアップ状態を確認します。オプションのステップ。ステータスは NOT ACTIVE で、データはバックアップされていません。(3) alter tablespace tablespacename beginbackup コマンドは、バックアップ対象の表領域をバックアップ状態に設定します。(4) オペレーティング システムのコピー コマンドを使用して、テーブルスペースに対応するすべてのデータ ファイルをバックアップ メディアにコピーします。(5) alter tablespace tablespacename end backup コマンドは、正常にバックアップされたテーブルスペースをリセットし、バックアップ状態を終了します。(6) 現在のREDOログファイルの情報をアーカイブログファイルに書き込みます。(7) データディクショナリを使用する場合 vb a ck up はデータファイルバックアップステータス確認しますオプションのステップステータスNO T ACT IVEです_ _ _ _データはバックアップませ。_ ( 3 )変更可能スペース変更可能スペース名前バックアップコマンド準備ます_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _コピーテーブルスペースバックアップ状態設定されます( 4 )オペレーティング システムのコピーコマンド使用してスペース対応するすべてのデータファイルバックアップメディアコピーします( 5 )オルタナティブ_ _ _ _ _ _ _le s a c e t a b les p a ce n a m e n d back upコマンド正常バックアップスペースリセット backup_copyステータス終了ます_ _ _ ( 6 )当期_ _REDOログファイルの情報アーカイブログファイル書き込まれます( 7 )データディクショナリvバックアップを使用して、データファイルのバックアップ状況を確認します オプションのステップ。
(8) オペレーティング システムのコマンドまたはツールを使用して、オペレーティング システム ファイルが生成されたかどうかを確認します。オプションのステップ。

2 オンラインバックアップの適用例
0 Create tablespace
create tablespace test datafile '/u01/test.dbf' size 1M;
1 alter tablespace tablespacename begin back バックアップ対象の表領域をバックアップ状態に設定するコマンドです。
alter tablespace test begin back up
2 オペレーティング システムの copy コマンドを使用して、テーブルスペースに対応するすべてのデータ ファイルをバックアップ メディアにコピーします。
host mkdir /u01/hotbackup
host cp /u01/test.dbf /u01/hotbackup/ test.dbf
3 alter tablespace tablespacename end backup コマンドは、正常にバックアップされた表領域をリセットして、バックアップ状態を終了します。
alter tablespace test end backup
4 現在の REDO ログ ファイル情報をアーカイブ ログ ファイルに書き込みます。
現在のシステム アーカイブ ログを変更する;
すべてのシステム アーカイブ ログを変更する;

3. リカバリ完了
0 テスト表スペースにテスト表を作成し、データを挿入し、テスト表スペースに対応するデータファイル test.dbf を削除することでリカバリが必要になります。
create table test (a int) tablespace test
insert into test names(1)
insert into test names(1)
commit
shutdown
host rm /u01/test.dbf
1 データベースを開くと障害が発生します。
起動
2 データディクショナリ v$datafile を使用して、リストアするデータファイルのファイル名を確認します。
3 alter database datafile 'データ ファイル名' オフライン コマンドは、問題のあるデータ ファイルをオフラインに設定します。
alter database datafile '/u01/test.dbf' offline;
4 alter database open コマンドを使用してデータベースを開きます。問題のデータファイルはオフラインであるため、他のすべてのデータファイルは同期されます。ステップ 4 はステップ 7 の後に配置できます。
alter Database open
5 オペレーティング システムの copy コマンドを使用して、バックアップされたデータ ファイルをデータベース内の元の場所にコピーします。
host cp /u01/hotbackup/ test.dbf /u01/test.dbf
6 Recovery コマンドを使用して、アーカイブ ログ ファイルおよび REDO ログ ファイルから送信されたすべてのデータを修復されたデータ ファイルに再書き込みします。
alterdatabaserecoverdatafile'/u01/test.dbf'
7 alterdatabaseonlinedatafilealterdatabasedatafile
'/u01/test.dbf'をオンラインで使用します;
8リカバリが成功したことを確認します。回復成功の基準は何ですか?
select * from test は、
失敗前のデータベースの状態に基づいて、リカバリが成功したかどうかを判断します。オフライン リカバリは、バックアップ時のデータベースの状態に基づいて行われます。

バックアップとリカバリのプロセスが次のような場合は、まずテスト表スペースにテスト表を作成し、テスト表にデータを入力してサブミットしてから、バックアップします。その後、テーブルのデータを削除し、データベースの完全な復元に失敗した場合のシミュレーションを行い、復元が成功した後、テスト テーブルにデータ行が存在するかどうかを確認します。

4 つのオンライン バックアップでは、RMAN を使用してデータ ファイルをリストア
します (1) RMAN を起動します
[oracle@localhost ~]$ rman target /
(2) リストアするデータ ファイルをオフラインにします
RMAN>sql'alter datafile 6 offline';
(3) データを再構築しますfile
RMAN >restore datafile 6
(4) データファイルをリストアします
RMAN>recover datafile 6
(5) データファイルをオンラインにします
RMAN>sql'alter datafile 6 online';

完全なデータベース回復方法
オラクルは、多数のデータベース システム アプリケーションを分析した結果、次の 4 つの完全なデータベース回復方法を要約しました。これら 4 つの完全な回復方法は、データベース アプリケーション環境の大部分をカバーしています。
(1) データベースが最初にオープンされた状態で、オープンされたデータベースのリカバリが実行されます
(2) 最初にデータベースを閉じた場合は、開いているデータベースを復元します。
(3) バックアップなしでデータファイルを復元します。
(4) データベースをクローズ状態に復元します。
上記のデータベースのリカバリを実行する場合、必要なアーカイブ ログ ファイルは、Oracle サーバーがアクセスできるディスク上に存在する必要があります。アーカイブ ログ ファイルがテープ上に存在する場合は、実際の操作を開始する前にディスクにコピーする必要があります。データベースの回復が機能します。

2. リカバリに関連するrecoverコマンドとデータ・ディクショナリcover
[automatic]データベース
recover[automatic]tablespace "表領域番号 | 表領域名"
cover[automatic] datafile "データ・ファイル番号 | データ・ファイル名"

dba_data_files データベース内のすべてのデータ ファイルのファイル番号、ファイル名、および対応する表スペース名を取得します。
dba_tablespace は、データベース内のすべての表領域の現在の状態を取得します。
v datafile は、データベース内のすべてのデータ ファイルの現在の状態を取得します。 v datafile は、データベース内のすべてのデータ ファイルの現在の状態を取得します。d a t a f i l eデータベース内のすべてのデータファイル現在の状況を取得します。 v reverse_file データベース内でリカバリーする必要があるファイルを取得します。ビュー情報は、バックアップまたは再構築からの制御ファイルなどの制御ファイルから取得されます。情報は不正確になります。
vRecoverylog は、リカバリーに使用する必要があるすべてのログを照会します。 v Recovery_log は、リカバリーに使用する必要があるすべてのログを照会します。回復_ _ _ _ _ _ _o gリカバリー使用する必要があるすべてのログを照会します。 v archived_logすべてのアーカイブ・ログ・リストを照会します。

3. データベースの初回オープン時のリストア
1 適用シナリオ
(1) リストア対象のデータファイルがシステム表スペースまたはリストア/ロールバックセグメント表スペースに属していない
(2) 磁気媒体が破損しているため、データファイルが破損しているクラッシュした、またはデータ ファイルの損失がデータベースのシャットダウンを引き起こしなかった
(3) データベース 24*7 方法
2 方法の手順
(1) データ ディクショナリ dba_data_files を使用して、復元するデータ ファイル、対応するテーブルスペースとそのテーブルスペースを取得します。関連情報。
(2) データ・ディクショナリー dba_tablespaces を使用して、リストアする表スペースがオフラインかオンラインかを取得するか、データ・ディクショナリー v を使用します。datafile リストアするデータファイルがオフラインであるかオンラインであるかを識別します。(3) 表スペースがオンラインの場合は、まず表スペースをオフラインに設定します。データファイルをオフラインに設定することもできます。すでにオフラインである場合、この手順は必要ありません。(4) オペレーティング システム コマンドは、バックアップされたデータ ファイルをデータベース内の元の場所にコピーします。(元の場所以外で行うにはどうすればよいですか?) (5) Recovery コマンドを使用して、アーカイブされたログ ファイルと REDO ログ ファイルから送信されたすべてのデータを修復されたデータ ファイルに書き換えます。covertablespace テーブルスペース名recoverdatafile データ ファイル名 (6) altertablespacealterd abase オンライン テーブルスペースまたはデータ ファイル (7) リカバリ中にバックアップ データ ファイルが別の場所にコピーされた場合は、データ ディクショナリ dbadatafiles を再度使用して、リストアされるテーブルスペースに対応するデータ ファイルを取得します。データ ファイルが正しい場所にコピーされていることを確認します。(8) 再度データ ディクショナリ dbatablespaces を使用してリストア対象の表スペースがオンラインかどうかを取得するか、データ ディクショナリ v datafile を使用してリストア対象のデータ ファイルがオフラインかオンラインかを確認します。(3) 表スペースがオンラインの場合は、まず表スペースをオフラインに設定します。データファイルをオフラインに設定することもできます。すでにオフラインの場合、この手順は必要ありません。(4) オペレーティング システムは、バックアップされたデータ ファイルをデータベース内の元の場所にコピーして戻すコマンドを実行します。(元の場所以外で行うにはどうすればよいですか?) (5) Recovery コマンドを使用して、アーカイブされたログ ファイルと REDO ログ ファイルから送信されたすべてのデータを修復されたデータ ファイルに書き換えます。リカバリー表領域 表領域名 リカバリー・データファイル データファイル名 (6) 表領域の変更 データベースのオンライン表領域またはデータファイル (7) リカバリー中にバックアップ・データ・ファイルが別の場所にコピーされた場合は、データ・ディクショナリー dba_data_files を再度使用して、リカバリーするデータを取得します。ファイルと対応する表スペースで、データ ファイルが正しい場所にコピーされていることを確認します。(8) データ・ディクショナリー dba_tablespaces を再度使用して、リストアする表スペースがオンラインかどうかを取得するか、データ・ディクショナリー v を使用します。データファイルリストアするデータファイルオフラインオンライン確認ます _ _ _ _ _ ( 3 )スペースオンライン場合は、まず表スペースオフライン設定ますできますデータファイルをオフラインますすでにオフラインの場合この手順必要ありませ ( 4 )オペレーティング システムのコマンドは、バックアップされたデータファイルをデータベース元の場所コピーします(場所以外行う方法は? ) ( 5 ) re co v rコマンドを使用してアーカイブされたログファイルREDOログファイルから送信れたすべてのデータを書き換えます修復されたデータファイルインポートしますrecover table spaceスペースrecover d a t aファイル( 6 ) a l t er t _ _ _ _ _ _ a b l _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _スペース_ _ _ _ _ _ _ter d a t a b a seオンラインテーブルスペースまたはデータファイル( 7 )リカバリ中にバックアップデータファイル別の場所コピーされた場合それ再度使用ます_ _データディクショナリデータベースdあたあ_ _リストアするデータファイル対応するテーブルスペース取得データファイル正しい場所にコピーされていること確認ます( 8 )データ辞書d b aを再度使用するaable space cesリストアするスペースオンラインどうかを取得するデータディクショナリvデータファイル使用してリストアするデータファイルがオンライン
3 具体例
例:共通ユーザーテーブルスペースの消失データファイルのリカバリ(ユーザーテーブルスペースの消失データファイルのリカバリ)
オンラインバックアップと障害シミュレーション処理
(1) ユーザーテーブルスペースのオンラインバックアップ
host mkdir /u01/hotbackup
alter tablespace users begin back
host cp /u01/app/oracle/oradata/orcl/users01.dbf /u01/hotbackup/users01.dbf
alter tablespace users end back
(2) scott ユーザーを使用して実験的なテーブル テストを作成する
conn scott/tiger
create table test as select * from emp;
(3) ユーザーの表領域データ ファイルを削除します。
host rm /u01/app/oracle/oradata/orcl/users01.dbf
(4) キャッシュをクリアします
alter system flash buger_cache;
(5) scott ユーザー クエリ テストで障害が見つかりました
conn / as sysdba
conn scott/tiger
select * from test
select * from test * 行 1 のエラー: ORA-01116: データベース ファイル 4 を開く際のエラーORA-01110: データ ファイル 4
: '/u01/app/oracle/oradata/orcl / users01.dbf' ORA-27041: ファイルを開けませんLinux エラー: 2: そのようなファイルまたはディレクトリはありません





追加情報: 3

リカバリプロセス
(1) ユーザーテーブルスペースデータファイル users01.dbf
alter datafile 4 offline
(2) バックアップファイルを対応する場所にリストアします
host cp /u01/hotbackup/users01.dbf /u01/app/oracle/oradata /orcl /users01.dbf
(3) オンラインで試し、エラーを報告し、
オンラインでデータベース データファイル 4 を復元
する必要があります (4) 制御ファイル内のファイルのチェックポイント情報とデータ ファイル ヘッダーを照会し、不整合を見つけて復元する必要があります
select file#,error ,change# from v KaTeX 解析エラー: 予期された 'EOF'、位置 38 で '#' を取得しました: …eckpoint_change#̲,last_change# f... datafile where file#=4
select Checkpoint_change# from v KaTeX解析エラー: 予期された 'EOF' 、位置 27 で '#' を取得しました: ...ader where file#̲=4 (5) ファイルを回復します... Recovery_file select Checkpoint_change#,last_change# from
vKaTeX 解析エラー: 予期された 'EOF'、位置 20 で '#' を取得しました: …file where file#̲=4 select check… datafile_header where file#=4
(7) オンライン データ ファイル、回復が成功したことを確認します。
データベース データファイルを変更します 4 オンライン
conn scott/tiger
select * from test

4. 最初はクローズ状態でのオープンデータベースリカバリ
1 該当するシナリオ
(1) リカバリ対象のデータファイルがシステムテーブルスペースまたはリストア/ロールバックセグメントテーブルスペースに属していない
(2) メディアが損傷している、ハードウェアが損傷しているまたは、データ ファイルが破損しています。損失により、すでにデータベースがシャットダウンされています。
(3) データベースは 24*7 です。 方法
2 方法の手順
(1) 起動マウント コマンドを使用して、データベースをロードします。破損したデータ ファイルを開くことができないため、データベースを開くことができません。
(2) データディクショナリを使用する vdatafile リストアするデータファイルのファイル名を確認します。この場合、データ ディクショナリはデータベースが開いている場合にのみ使用できるため、dbadatafiles は使用できません。(3) alterdatabasedatafile 'データ ファイル名' offline コマンドは、問題のあるデータ ファイルをオフラインに設定します。この場合、altertablespace コマンドを使用して問題のある表領域をオフラインに設定することはできません。このコマンドはデータベースが開いているときにのみ使用できるためです。(4) alterdatabaseopen コマンドでデータベースを開きます。問題のデータファイルはオフラインであるため、他のすべてのデータファイルは同期されます。(5) オペレーティング システムのコピー コマンドを使用して、バックアップしたデータ ファイルをデータベース内の元の場所にコピーします。メディアが破損している場合は、バックアップデータファイルを別のメディアにコピーし、alterdatabaserenamefileコマンドでデータファイル名を変更してください。(6) Recovery コマンドを使用して、アーカイブされたログ ファイルおよび REDO ログ ファイルから送信されたすべてのデータを修復されたデータ ファイルに書き換えます。Recoverytablespace テーブルスペース名または Recoverydatafi を使用できます。le データファイル名。(7) リカバリが完了したら、altertablespacealterd を使用して、ベースのオンライン表スペースまたはデータ ファイルを使用します。(8) リカバリ中にバックアップデータファイルが別の場所にコピーされた場合は、再度データディクショナリ dbadatafiles を使用してリストア対象のデータファイルと対応する表スペースを取得し、データファイルが正しい場所にコピーされていることを確認します。(9) 再度データディクショナリ dbatablespaces を使用してリストア対象の表スペースがオンラインかどうかを取得するか、データディクショナリ v datafile を使用してリストア対象のデータファイルのファイル名を確認します。この場合、データ ディクショナリはデータベースが開いている場合にのみ使用できるため、dba_data_files は使用できません。(3) alter database datafile 'data file name' offline コマンドは、問題のあるデータ ファイルをオフラインに設定します。この場合、alter tablespace コマンドを使用して問題のある表領域をオフラインに設定することはできません。これは、このコマンドはデータベースが開いているときにのみ使用できるためです。(4) alter database open コマンドでデータベースを開きます。問題のデータファイルはオフラインであるため、他のすべてのデータファイルは同期されます。(5) オペレーティング システムのコピー コマンドを使用して、バックアップしたデータ ファイルをデータベース内の元の場所にコピーします。メディアが破損している場合は、バックアップ データ ファイルを別のメディアにコピーし、alter database rename file コマンドを使用してデータ ファイル名を変更します。(6) Recovery コマンドを使用して、アーカイブ ログ ファイルおよび REDO ログ ファイルからコミットされたすべてのデータを修復されたデータ ファイルに再書き込みします。「recover tablespace 表スペース名」または「recover datafile データファイル名」を使用できます。(7) リカバリ完了後、alterを使用する tablespace alter database オンラインのテーブルスペースまたはデータファイル。(8) リカバリ時にバックアップデータファイルが別の場所にコピーされた場合は、再度データディクショナリ dba_data_files を使用してリストア対象のデータファイルと対応する表領域を取得し、データファイルが正しい場所にコピーされていることを確認します。(9) データ・ディクショナリー dba_tablespaces を再度使用して、リストアする表スペースがオンラインかどうかを取得するか、データ・ディクショナリー v を使用します。データファイル復元するデータファイルファイル確認ます_ _ _ _ この場合d b a は使用できませんdあたあ_ _データディクショナリデータベース開いいる場合のみ使用できるためです_ ( 3 ) a l ter d a t a b a s e d a t a file of f l 'データファイル' _ _ _ _ _ _ineコマンドは、問題あるデータファイルオフラインします この場合alter table space spaceコマンド使用問題あるスペースオフライン設定することできませ_ _ _このコマンドは、データベースが開いている場合のみ使用できます( 4 ) a lter daba s e openコマンドデータベース開きます_ _ _ _ _ _ _ _ _ 問題データファイルがオフラインであるため他のすべてのデータファイルは同期されます( 5 )オペレーティング システムのコピーコマンドを使用してバックアップしたデータファイルをデータベース元の場所コピーしますメディアが破損している場合バックアップデータファイルメディアコピーalter data base name fileコマンド使用データファイル_ _ _ _ name変更ます_ _ _ _ _ _ _ _ _ ( 6 ) rec o_ _使用するv e rコマンドはコミットされたすべてのデータをアーカイブログファイルREDOログファイルから修復れたデータファイル書き込みします 回復可能スペース使用できます_ _ _ _ _ _ _ _ _ _テーブルスペースリカバリデータファイル使用できます_ _ _ _ _ _ _ _ _ _ _ ( 7 )回復完了たら代替可能スペースフィルター使用ます_ _ _ _ _ _ _ _データベースオンラインテーブルスペースまたはデータファイル_ _ _ _ _ ( 8 )リカバリ中にバックアップデータファイル別の場所コピーされた場合はデータディクショナリd b a再度使用しますdあたあ_ _リストアするデータファイル対応するテーブルスペース取得データファイル正しい場所にコピーされていること確認ます( 9 )データ辞書d b aを再度使用するaable space cesリストアするスペースオンラインどうかを取得するデータディクショナリvデータファイル使用してリストアするデータファイルがオンライン
3 具体例
例: 共通ユーザーテーブルスペースで失われたデータファイルのリカバリ (テストテーブルスペースのデータファイル損失リカバリ)
オンラインバックアップと模擬障害プロセス
(0) create tablespace
create tablespace test datafile '/u01/test.dbf' size 1M;
(1) alter tablespace tablespacename begin back コマンドは、バックアップされる表領域をバックアップ状態に設定します。
alter tablespace test begin back
(2) オペレーティング システムの copy コマンドを使用して、テーブルスペースに対応するすべてのデータ ファイルをバックアップ メディアにコピーします。
host mkdir /u01/hotbackup
host cp /u01/test.dbf /u01/hotbackup/test.dbf
(3) alter tablespace tablespacename end backup コマンドは、正常にバックアップされた表領域のバックアップ ステータスをリセットします。
alter tablespace test end backup
(4) 現在の REDO ログ ファイルの情報をアーカイブ ログ ファイルに書き込みます。
alter system archive log current;
alter system archive log all;
(5) テスト表スペースにテスト表を作成し、データを挿入し、テスト表スペースに対応するデータファイルtest.dbfを削除してリカバリが必要になります。
テーブル作成テスト (int) テーブルスペーステスト
テスト値に挿入(1)
テスト値に挿入(1)
コミット
シャットダウン
ホスト rm /u01/test.dbf
システム フラッシュ バッファ キャッシュを変更します。

回復プロセス
(1) はデータベースを開き、失敗します。
起動
(2) データディクショナリ v$datafile を使用して、リストアするデータファイルのファイル名を確認します。
(3) alter database datafile 'data file name' offline コマンドは、問題のあるデータ ファイルをオフラインに設定します。
alter database datafile '/u01/test.dbf' offline;
(4) alter database open コマンドでデータベースを開きます。問題のデータファイルはオフラインであるため、他のすべてのデータファイルは同期されます。ステップ 4 はステップ 7 の後に配置できます。
alter database open
(5) オペレーティング システムの copy コマンドを使用して、バックアップ データ ファイルをデータベース内の元の場所にコピーします。
host cp /u01/hotbackup/ test.dbf /u01/test.dbf
(6) Recovery コマンドを使用して、アーカイブ ログ ファイルおよび REDO ログ ファイルから送信されたすべてのデータを修復されたデータ ファイルに再書き込みします。
alterdatabaserecoverdatafile'/u01/test.dbf' (7)
リカバリ後に
alterdatabaseonlinedatafilealterdatabasedatafile'/u01/test.dbf' をオンラインで使用します ;
(8)リカバリが成功したかどうかを確認します。回復成功の基準は何ですか?
テストから * を選択

1 バックアップなしのデータファイルのリストア
1 該当するシナリオ
(1) リストア対象のデータファイルは、システム表スペースまたはリストア/ロールバックセグメント表スペースに属しません。
(2) メディアの損傷またはユーザーのエラーによりデータ ファイルが失われますが、このデータ ファイルはバックアップされていません。
(3) このデータ ファイルの作成時にアーカイブされたログ ファイルはすべてそのままです。

2 データ ファイル構造を再構築します
alter database create datafile "元のファイル名"。このコマンドは、元のデータ ファイルと同じ名前でデータ ファイルを再構築します。
alter database create datafile "元のファイル名" を "新しいファイル名" にすると、このコマンドで再構築されるデータ ファイルの名前は元のデータ ファイルとは異なります。

3 方法の手順
(1) データベースが開いている場合は、データ ディクショナリ dba_data_files を使用して、復元するデータ ファイル、対応するテーブル スペース、およびそれらの関連情報を取得します。
(2) データベースがオープンしている場合は、データ ディクショナリ dba_tablespaces を使用してリストア対象の表領域がオフラインかオンラインかを取得するか、データ ディクショナリ v datafile を使用してリストア対象のデータ ファイルがオフラインかオンラインかを確認します(3) 表スペースがオンラインの場合は、まず表スペースをオフラインに設定する必要があります。また、データ ファイルをオフラインに設定することもできます。すでにオフラインである場合、この手順は必要ありません。データベースが閉じている場合は、startupmount コマンドを使用してデータベースをマウントします。次に、alterdatabasedatafile "datafilename" offline; コマンドを使用して、問題のあるデータファイルをオフラインにします。最後に、alterdatabaseopen を使用してデータベースを開きます。(4) データディクショナリvデータファイルを使用して、リストアするデータファイルがオフラインかオンラインかを確認します。(3) 表スペースがオンラインの場合は、最初に表スペースをオフラインに設定する必要があります。そうでない場合は、データ ファイルをオフラインに設定することもできます。すでにオフラインの場合、この手順は必要ありません。データベースが閉じている場合は、startup mount コマンドを使用してデータベースをロードします。次に、alter database datafile "data file name" offline; コマンドを使用して、問題のあるデータ ファイルをオフラインに設定します。最後に、alter database open を使用してデータベースを開きます。(4) データ辞書の使用 vデータファイルリストアするデータファイルオフラインオンライン確認ます _ _ _ _ _ ( 3 )スペースがオンライン状態にある場合はまずスペースをオフライン状態設定する必要がありますデータファイルをオフラインますすでにオフラインの場合この手順必要ありませ データベース閉じている場合は start t up m o u n tコマンド使用してデータロードします図書館次にalter d a t a b a s e d a t a f i e "データファイル" of f line使用します; _ _ _ _ _ _ _ファイルオフライン設定ます ついに,データベース開くalter database open使用ます_ _ _ _ _ _ _ _ ( 4 )データディクショナリv reverse_fileを使用して、データ ファイルのリカバリ ステータスを表示します。このとき、エラー列の表示は「ファイルが見つかりません」、変更# 列の表示は 0、時間列の表示は表示されます。出力を表示しないでください。
(5) alter database create datafile を使用してデータ ファイル構造を再構築します
(6) vKaTeX 解析エラーを使用します: 'EOF' が予期され、位置 47 で '#' を取得しました: ... 列には出力が表示されません。chang#̲ 列とtime 列の表示 どちらも新しい値を持ちます...datafile は、リストアするデータファイルがオフラインかオンラインかを確認します。

4 具体例
例:バックアップなしのデータファイルのリストア(テストテーブルスペースのデータファイルが消失しバックアップされていない場合)
オンラインバックアップと模擬障害処理
(1) テストテーブルスペースの作成
create tablespace test datafile '/u01/test01.dbf' サイズ 5M
(2) ) 実験テーブルの作成 test
create table test(anumber(2)) tablespace test;
insert into test names(1);
commit;
(3) テストテーブルスペースデータファイル
host rf /u01/test01.dbfを削除します
(4) Clearキャッシュ
の変更システムフラッシュバッファキャッシュ;
(5) 再度クエリテストに接続し、障害を見つけます
conn / as sysdba
select * from test
select * from test *

1 のエラー:
ORA-01116: データベース ファイル 6 を開くときにエラーが発生しました
ORA-01110 : データ ファイル 6: '/u01/test01.dbf'
ORA-27041: ファイルを開けません
Linux エラー: 2: そのようなファイルまたはディレクトリはありません
追加情報: 3

リカバリプロセス
(1) テストテーブルスペースデータファイル test01.dbf をオフラインにします
alterdatabase datafile 6 オフライン
(2) データファイルを対応する場所に作成します
alterdatabase create datafile '/u01/test01.dbf';
(3) ファイルをリカバリします
リカバリ データファイル 6
(4) リカバリが成功したかどうかを確認するためのオンライン データ ファイル。
データベース データファイルを変更します 6 オンラインで
選択 * テストから

2 クローズ状態でのデータベースのリストア
1 該当するシナリオ
(1) リストア対象のデータファイルは、システム表領域またはリストア/ロールバックセグメント表領域に属します。
(2) データベース全体またはほとんどのデータ ファイルを復元する必要があります。
(3) 24時間365日稼働ではなく、作業中にデータをオフにすることができます
2 方法の手順
(1) データベースが開いている場合は、データ ディクショナリ dba_data_files を使用して、復元するデータ ファイル、対応するテーブル スペース、およびそれらの関連情報を取得します。
(2) データベースが開いている場合は、shutdown コマンドを使用してデータベースを閉じます (場合によっては中止オプションを使用します)。
(3) ロードしてデータベースのシャットダウン マウントを開始します。
(4) オペレーティング システムのコピー コマンドを使用して、バックアップされたデータ ファイルをデータベース内の元の場所にコピーします。メディアが破損している場合は、バックアップデータファイルを別のメディアにコピーし、alterコマンドでデータファイル名を変更してください。
(5) Recovery コマンドを使用して、アーカイブされたログ ファイルおよび REDO ログ ファイルから送信されたすべてのデータを、修復されたデータ ファイル リカバリ データベースに再書き込みします。
(6) alterdatabaseopenコマンドを使用してデータベースをオープンします。
(7) リカバリ中にバックアップ データ ファイルが他のメディアにコピーされた場合は、データ ディクショナリ dba_data_files を再度使用して、復元するデータ ファイルと対応するテーブルスペースを取得し、データ ファイルが正しい場所にコピーされたことを確認する必要があります。
3 具体例
例:システム表領域データファイル消失のリカバリ(システム表領域データファイル消失リカバリ)
オンラインバックアップと擬似障害処理
(1) システム表領域のオンラインバックアップ
host mkdir /u01/hotbackup
alter tablespace system begin back
host cp /u01/app/oracle/oradata/orcl/system01.dbf /u01/hotbackup/system01.dbf
alter tablespace system end back
(2) sys ユーザーを使用して、 Experiment Table test
create table test as select * from dba_objects
select count(
) from test
(3) システム テーブル スペース データ ファイルの削除
host rm /u01/app/oracle/oradata/orcl/system01.dbf
(4) キャッシュのクリア
alter system flash buffer_cache ;
(5) sys ユーザーはデータベース
conn / as sysdbaへの接続に失敗しました
エラー:
ORA-01075: 現在ログオンしています
警告: ORACLE には接続されていません。

リカバリ プロセス
(1) は通常、データベースを
すぐに閉じることができません。シャットダウン
します。 ORA-00604: 再帰 SQL レベル 2 でエラーが発生しました。
ORA-01116: データベース ファイル 1 を開くときにエラーが発生しました
。 ORA-01110: データ ファイル 1: '/u01/app/oracle/ oradata/orcl/system01.dbf'
ORA-27041: ファイルを開けません
Linux エラー: 2: そのようなファイルまたはディレクトリはありません
追加情報: 3

起動
ORA-01081: すでに実行中の ORACLE を起動できません - 最初にシャットダウンしてください
(2)通過kill进程方式
host ps -ef |起動します。grep dbw
オラクル 2822 1 0 16:51 ? 00:00:00 ora_dbw0_orcl
oracle 3481 2796 0 17:46 ポイント/1 00:00:00 /bin/bash -c ps -ef | grep dbw
oracle 3483 3481 0 17:46 ポイント/1 00:00:00 grep dbw

host kill -9 2822
(3) データベースを起動するか、起動エラーが発生します。
(
4) バックアップ ファイルを対応する場所に復元します。
host cp /u01/hotbackup/system01.dbf /u01/app/oracle/oradata/orcl/ system01.dbf
(5) ファイルのリカバリ
データファイル 1 のリカバリ
(6) 制御ファイル内のファイルのチェックポイント情報とデータ ファイル ヘッダーを再度照会し、同じであることを確認します。
v KaTeX 解析エラー: 予期されるselect Checkpoint_change#,last_change# 'EOF'、位置 20 で ' #' を取得しました: …file where file#̲=1 select check… datafile_header where file#=1
(7) オンライン データ ファイル、リカバリが成功したかどうかを確認します。
データベースを変更して開く
select * from test

------------------------境界線---------------------------- --------------

答えは次のとおりです。

無料ダウンロード:
BZUUniversity オンライン バックアップと完全なデータベース回復.docx
https://download.csdn.net/download/weixin_42692989/33855386

おすすめ

転載: blog.csdn.net/weixin_42692989/article/details/120911793