Front page   Edit Freeze Diff Upload Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes

技術文書/Oracle/11g/RMANとリカバリカタログ

Last-modified: Sat, 29 Jan 2011 15:27:48 JST (3412d)
Top > 技術文書 > Oracle > 11g > RMANとリカバリカタログ

参考文献 EditEdit(GUI)

DBの準備 EditEdit(GUI)

DBを一つ用意します。rcat として作りました。

DBCAで作るときは何もオプションは要りません。 最低限のものでいいです。

リカバリカタログの作成 EditEdit(GUI)

「12 リカバリ・カタログの管理」を見ながら作ります。

所有者の作成と権限の付与 EditEdit(GUI)

rman/rman というユーザにしています。

[oracle@ora1 ~]$ sqlplus sys/oracle@rcat as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 日 9月 13 17:51:04 2009

Copyright (c) 1982, 2009, Oracle.  All rights reserved.



Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
に接続されました。
SQL> create user rman identified by rman
  2  temporary tablespace temp
  3  default tablespace users
  4  quota unlimited on users;

ユーザーが作成されました。

SQL> grant recovery_catalog_owner to rman;

権限付与が成功しました。

SQL> 

リカバリカタログの作成 EditEdit(GUI)

rman で接続して作ります。

[oracle@ora1 ~]$ rman catalog rman/rman@rcat

Recovery Manager: Release 11.2.0.1.0 - Production on 日 9月 13 18:00:48 2009

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

リカバリ・カタログ・データベースに接続されました。

RMAN> create catalog;

リカバリ・カタログが作成されました。

RMAN> 

できていることを確認しましょう。

[oracle@ora1 ~]$ sqlplus rman/rman@rcat

SQL*Plus: Release 11.2.0.1.0 Production on 日 9月 13 18:04:01 2009

Copyright (c) 1982, 2009, Oracle.  All rights reserved.



Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
に接続されました。
SQL> select table_name from user_tables;

TABLE_NAME
--------------------------------------------------------------------------------
TEMPRES
...
DB

44行が選択されました。

SQL> 

OKです。

DBの登録 EditEdit(GUI)

orcl データベースを登録します。

RMANから接続します。

[oracle@ora1 ~]$ rman catalog rman/rman@rcat

Recovery Manager: Release 11.2.0.1.0 - Production on 日 9月 13 18:07:09 2009

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

リカバリ・カタログ・データベースに接続されました。

RMAN> connect target sys/oracle@orcl

ターゲット・データベース: ORCL (データベースID=1225201194)に接続されました

RMAN> register database;

データベースがリカバリ・カタログに登録されました。
リカバリ・カタログの完全再同期を開始しています
完全再同期が完了しました

RMAN> report schema;

データベースdb_unique_name ORCLのデータベース・スキーマのレポート

永続データファイルのリスト
===========================
File Size(MB) Tablespace           RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1    680      SYSTEM               YES     /u02/oradata/orcl/system01.dbf
2    510      SYSAUX               NO      /u02/oradata/orcl/sysaux01.dbf
3    85       UNDOTBS1             YES     /u02/oradata/orcl/undotbs01.dbf
4    5        USERS                NO      /u02/oradata/orcl/users01.dbf
5    100      EXAMPLE              NO      /u02/oradata/orcl/example01.dbf
6    10       TESTTBS              NO      /u02/oradata/orcl/testtbs01.dbf

一時ファイルのリスト
=======================
File Size(MB) Tablespace           Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
1    29       TEMP                 32767       /u02/oradata/orcl/temp01.dbf

RMAN> 

ブロックチェンジトラッキングファイルの有効化 EditEdit(GUI)

orcl インスタンスに接続して設定します。 増分バックアップが速くなるそうです。

db_create_file_dest の先にこのファイルを作ります。

[oracle@ora1 ~]$ sqlplus sys/oracle@orcl as sysdba
...

SQL> show parameter db_create_file_dest

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
db_create_file_dest                  string

SQL> alter system set db_create_file_dest='/u02/oradata/orcl'
  2  scope=both sid='*';

システムが変更されました。

SQL> alter database enable block change tracking;

データベースが変更されました。

SQL> select status,filename from v$block_change_tracking;

STATUS
------------------------------
FILENAME
--------------------------------------------------------------------------------
ENABLED
/u02/oradata/orcl/ORCL/changetracking/o1_mf_5bsgrjw5_.chg


SQL> 

ちゃんとファイルが作られていました。

[oracle@ora1 ~]$ ls /u02/oradata/orcl/ORCL/changetracking/
o1_mf_5bsgrjw5_.chg

アーカイブバックアップの作成 EditEdit(GUI)

まずRMANで接続しておきます。 バックカップ先を設定しました。

[oracle@ora1 ~]$ rman catalog rman/rman@rcat

Recovery Manager: Release 11.2.0.1.0 - Production on 日 9月 13 18:32:03 2009

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

リカバリ・カタログ・データベースに接続されました。

RMAN> connect target sys/oracle@orcl

ターゲット・データベース: ORCL (データベースID=1225201194)に接続されました

RMAN> configure channel device type disk format '/u01/app/oracle/backup/%U';

新しいRMAN構成パラメータ:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   '/u01/app/oracle/backup/%U';
新しいRMAN構成パラメータが格納できました
リカバリ・カタログの完全再同期を開始しています
完全再同期が完了しました

RMAN>

バックアップします。マルチセクションにしてみます。

RMAN> run {
2> backup database section size 100M
3> tag orcl20090913
4> keep forever
5> ;
6> }

backupが開始されました(開始時間: 09-09-13)
現在のログがアーカイブされました。

チャネル: ORA_DISK_1が割り当てられました
チャネルORA_DISK_1: SID=96 デバイス・タイプ=DISK
バックアップは廃止になりません。
このバックアップからのリカバリを要求されたアーカイブ・ログはバックアップされません
チャネルORA_DISK_1: フル・データファイル・バックアップ・セットを開始しています
チャネルORA_DISK_1: バックアップ・セットにデータファイルを指定しています
入力データファイル・ファイル番号=00001 名前=/u02/oradata/orcl/system01.dbf
1から12800のブロックをバックアップしています
チャネルORA_DISK_1: ピース1(09-09-13)を起動します
...
チャネルORA_DISK_1: バックアップ・セットが完了しました。経過時間: 00:00:03
backupが完了しました(完了時間: 09-09-13)

バックアップの確認 EditEdit(GUI)

list backup で確認できます。

RMAN> list backup;


バックアップ・セットのリスト
===================


BS Key  Type LV Size       Device Type Elapsed Time 終了時間
------- ---- -- ---------- ----------- ------------ --------
216     Full    593.77M    DISK        00:07:47     09-09-13
        維持: BACKUP_LOGS        期限: FOREVER        
...

リカバリ EditEdit(GUI)

SHUTDOWNしてからファイルを消しちゃいます。

[oracle@ora1 ~]$ cd /u02/oradata/orcl
[oracle@ora1 orcl]$ rm system01.dbf
[oracle@ora1 orcl]$ rm example01.dbf 

当然ながら正しく起動しません。

SQL> startup
ORACLEインスタンスが起動しました。

Total System Global Area  521936896 bytes
Fixed Size                  2214936 bytes
Variable Size             402654184 bytes
Database Buffers          113246208 bytes
Redo Buffers                3821568 bytes
データベースがマウントされました。
ORA-01157: データファイル1を識別/ロックできません -
DBWRトレース・ファイルを参照してください ORA-01110:
データファイル1: '/u02/oradata/orcl/system01.dbf'


SQL> 

RMANからつないで戻します。

リカバリカタログがあるので どうバックアップされているのかは全部RMANが知っているということで、 リストアやリカバリはとても簡単に終わります。

[oracle@ora1 ~]$ rman catalog rman/rman@rcat

Recovery Manager: Release 11.2.0.1.0 - Production on 日 9月 13 19:19:07 2009

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

リカバリ・カタログ・データベースに接続されました。

RMAN> connect target sys/oracle@orcl

ターゲット・データベース: ORCL(DBID=1225201194、未オープン)に接続されました

RMAN> restore database;

restoreが開始されました(開始時間: 09-09-13)
チャネル: ORA_DISK_1が割り当てられました
チャネルORA_DISK_1: SID=20 デバイス・タイプ=DISK
...
チャネルORA_DISK_1: リストアが完了しました。経過時間: 00:00:35
restoreが完了しました(完了時間: 09-09-13)

restore が終わったら recover もしておきます。

RMAN> recover database;

recoverが開始されました(開始時間: 09-09-13)
チャネルORA_DISK_1の使用

メディア・リカバリを開始しています
メディア・リカバリが完了しました。経過時間: 00:00:07

recoverが完了しました(完了時間: 09-09-13)

RMAN> 

今度は正しく上がります。

SQL> shutdown immediate
ORA-01109: データベースがオープンされていません。


データベースがディスマウントされました。
ORACLEインスタンスがシャットダウンされました。
SQL> startup
ORACLEインスタンスが起動しました。

Total System Global Area  521936896 bytes
Fixed Size                  2214936 bytes
Variable Size             402654184 bytes
Database Buffers          113246208 bytes
Redo Buffers                3821568 bytes
データベースがマウントされました。
データベースがオープンされました。
SQL> 


URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White