今回はRMANのリストア・リカバリ方法のうち、障害発生時点まで復旧させる方法を記載させて頂きます。
障害発生時点まで復旧させる前提としては、以下となります。
・OSに障害が無いこと
・DBデータファイル以外の、制御ファイル、REDOログファイル、アーカイブREDOログファイルに破損が無いこと
・バックアップが成功しており、バックアップファイルが存在すること
リストア・リカバリコマンドと実行例は以下の通りです。
1.DBデータのリストア
RMANでDBファイルをリストアする場合、mountモードで起動している必要があります。
コマンド:
su – oracle
sqlplus / as sysdba
startup mount;
実行例:————————————————————————-
# su – oracle
$ sqlplus / as sysdba
SQL*Plus: Release 12.1.0.2.0 Production on
Copyright (c) 1982, 2014, Oracle. All rights reserved.
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 – 64bit Production
With the Partitioning, OLAP, Advanced Analytics, Real Application Testing
and Unified Auditing options
に接続されました。
SQL> startup mount
ORACLEインスタンスが起動しました。
Total System Global Area 4.1540E+10 bytes
Fixed Size 4371656 bytes
Variable Size 5979324152 bytes
Database Buffers 3.4426E+10 bytes
Redo Buffers 128843776 bytes
データベースがマウントされました。
———————————————————————————-
2.RMAN起動
リストア・リカバリを実行するために、RMANを起動します。
コマンド:
export NLS_DATE_FORMAT=’yyyy/mm/dd hh24:mi:ss’
rman target /
実行例:————————————————————————-
$ export NLS_DATE_FORMAT=’yyyy/mm/dd hh24:mi:ss’
$ rman target /
Recovery Manager: Release 12.1.0.2.0 – Production on
Copyright (c) 1982, 2014, Oracle and/or its affiliates. All rights reserved.
ターゲット・データベース: ORCL(DBID=1234245419、未オープン)に接続されました
———————————————————————————-
3.DBのリストア・リカバリを実行
以下のRMANコマンドを実行することで、リストアをリカバリを同時に実行します。また、実行例を見て頂くと、まずデータファイルをリストアし、REDOログファイルからリカバリしていることが分かると思います。
コマンド:
run {
restore database;
recover database;
}
実行例:————————————————————————-
RMAN> run {
restore database;
recover database;
}
リカバリ・カタログのかわりにターゲット・データベース制御ファイルを使用しています
チャネル: ORA_DISK_1が割り当てられました
チャネルORA_DISK_1: SID=1068 デバイス・タイプ=DISK
restoreが開始されました(開始時間: 2018-03-21 10:47:18)
チャネルORA_DISK_1: データファイル・バックアップ・セットのリストアを開始しています
チャネルORA_DISK_1: バックアップ・セットからリストアするデータファイルを指定しています
チャネルORA_DISK_1: データファイル00001を/oracle/data/orcl/system01.dbfにリストアしています
チャネルORA_DISK_1: データファイル00002を/oracle/data/orcl/sysaux01.dbfにリストアしています
チャネルORA_DISK_1: データファイル00003を/oracle/data/orcl/undotbs01.dbfにリストアしています
チャネルORA_DISK_1: データファイル00004を/oracle/data/orcl/users01.dbfにリストアしています
チャネルORA_DISK_1: バックアップ・ピースORCL_0sqf1zed_1_1から読取り中です
チャネルORA_DISK_1: ピース・ハンドル=/backup/ORCL_0sqf1zed_1_1 タグ=TAG20170922T101540
チャネルORA_DISK_1: バックアップ・ピース1がリストアされました
チャネルORA_DISK_1: リストアが完了しました。経過時間: 00:21:45
restoreが完了しました(完了時間: 2018-03-21 11:29:29)
recoverが開始されました(開始時間: 2018-03-21 11:29:29)
メディア・リカバリを開始しています
メディア・リカバリが完了しました。経過時間: 00:00:03
recoverが完了しました(完了時間: 2018-03-21 11:29:32)
チャネル: ORA_DISK_1がリリースされました
———————————————————————————-
4. DBをオープンする
コマンド:
alter database open;
実行例:————————————————————————-
RMAN> alter database open;
alter database open;
文が処理されました
———————————————————————————-
以上で完了です。
次回以降、時間指定リカバリと、全損時想定のリカバリ方法を記載したいと思います。