Oracle Direct Seminar...※Oracle Database 10g Release 1 からはALTER DATABASE BEGIN BACKUP...
Transcript of Oracle Direct Seminar...※Oracle Database 10g Release 1 からはALTER DATABASE BEGIN BACKUP...
Oracle Direct Seminar
<Insert Picture Here>
著者登場!これは使えるOracle新機能活用術著者登場!これは使えるOracle新機能活用術-バックアップ/リカバリ編-日本オラクル株式会社
このセッション
「 れは使える 新機能活 術「これは使えるOracle新機能活用術」(翔泳社)
第3章「システムを停止させないバックアップの手法」
第4章「RMANの活用とバックアップ運用の改善」
書籍はOracle Database 11g R1 をベースにしていますが、概念はOracle Database 11g R2 でも基本的に同じです。
Oracle GRID Centerにも技術資料がたくさんありますhttp://www.oracle.co.jp/solutions/grid_center/
Copyright© 2009, Oracle. All rights reserved.
アジェンダ
• バックアップ / リストア / リカバリ の関係
• ホット・バックアップ・モードとストレージ機能• ホット・バックアップ・モード• ストレージ機能でのバックアップ補助
• Recovery Manager (RMAN)・SQL Serverからの移行アセスメント
MySQLからの移行相談
無償技術サービスOracle Direct Concierge
• Recovery Manager (RMAN)• リストア / リカバリの短縮
・MySQLからの移行相談・PostgreSQLからの移行相談・Accessからの移行アセスメント
・Oracle Database バージョンアップ支援・Oracle Developer/2000 Webアップグレ ド相談・Oracle Developer/2000 Webアップグレード相談
・パフォーマンス・クリニック・Oracle Database 構成相談
・Oracle Database 高可用性診断・システム連携アセスメント・システム連携アセスメント・システムセキュリティ診断
・簡易業務診断
htt // l /l /j /di t/ i ht l
Copyright© 2009, Oracle. All rights reserved. 3
http://www.oracle.com/lang/jp/direct/services.html
データベースの破損
SQL> select * from emp;select * from emp
*行1でエラーが発生しました。:ORA-01578:Oracleデータ・ブロックに障害が発生しました(ファイル番号4、ブロック番号27)O 01110 デ タ イORA-01110: データファイル4:'/u01/app/oracle/oradata/orcl/users01.dbf'
※データファイルをddコマンドで上書きした例
Copyright© 2009, Oracle. All rights reserved.
データベースのバックアップ
デ スク アレイ側でRAIDを構成していても万全とは言えない• ディスク・アレイ側でRAIDを構成していても万全とは言えない• RAIDはディスク・ドライブの故障に備えるためのもの• ディスク・ドライブ以外の要素が破損することがある• ディスク ドライブ以外の要素が破損することがある
• データベースを構成するファイルのコピーを取得する• デ タベ スを構成するファイルのコピ を取得する• コールド・バックアップ:DBMSを停止させて取得• ホット・バックアップ:DBMSを稼動させたまま取得
Copyright© 2009, Oracle. All rights reserved.
Oracle Databaseのデータのバックアップ
論理バ クア プ• 論理バックアップ• データのみを抽出し、障害時にデータを再ロードする方法
• Data Pumpユーティリティ• Data Pumpユ ティリティ
• 物理バックアップ• 物理バックアップ• ユーザー管理バックアップ
• OSコマンド+SQLコマンド
• Recovery Manager (RMAN)組• Oracleインスタンスの仕組みでファイルにアクセス
Copyright© 2009, Oracle. All rights reserved.
Oracle Databaseのアーキテクチャ
Oracleクライアント
TCP/IP
データファイル(表領域 / 表や索引)oracleサーバープロセス
制御ファイル(ファイルの構成)
Oracleインスタンス
共有メモリとバ クグラウンドプロセス 制御ファイル(ファイルの構成)
Oracleサーバー
バックグラウンドプロセス
オンラインREDOログファイル(データベースの更新履歴)
Oracleサ バ
Oracleデータベース
Copyright© 2009, Oracle. All rights reserved.
Oracleデ タ ス
バックアップ / リストア / リカバリ の関係データファイルのバックアップを取得
時間
UPDATEINSERT
DELETE
バックアップ
データファイル更新内容がREDOログに記録される
Copyright© 2009, Oracle. All rights reserved.
バックアップ / リストア / リカバリ の関係バックアップ取得後にもデータベースは更新される
時間
データファイルに障害発生
UPDATEINSERT
DELETE
UPDATEINSERT
DELETE
UPDATEINSERT
DELETE
UPDATEINSERT
DELETE
バックアップ
更新内容がREDOログに記録されるデータファイル
データファイルのバックアップには、バックアップ以後の更新内容は含まれていない
Copyright© 2009, Oracle. All rights reserved.
バックアップ / リストア / リカバリ の関係
時間
データファイルに障害発生
UPDATEINSERT
DELETE
UPDATEINSERT
DELETE
UPDATEINSERT
DELETE
UPDATEINSERT
DELETE
更新履歴
バックアップ
リストア
(REDOログ)データファイル
デ タファイル
リストア
障害が発生したデータファイルをバックアップから書き戻す(リストア)
データファイル
時間
Copyright© 2009, Oracle. All rights reserved.
バックアップから書き戻す(リストア)
バックアップ / リストア / リカバリ の関係
時間
データファイルに障害発生
UPDATEINSERT
DELETE
UPDATEINSERT
DELETE
UPDATEINSERT
DELETE
UPDATEINSERT
DELETE
更新履歴
バックアップ
(REDOログ)
バ
データファイル
リストア リカバリ
デ タファイル
リストア
障害直前の状態にリカバリ完了
時間
REDOログに記録された更新履歴を再現データファイル
Copyright© 2009, Oracle. All rights reserved.
にリカバリ完了
データファイルのリカバリ
制御ファイルCKPT
データファイルのチェックポイント状態制御ファイル
LGWR
チェックポイント状態
オンラインREDOログファイル データファイルの更新履歴ARCn
リカバリ
アーカイブREDOログファイル
DBWn
データファイルはREDO情報からリカバリできる
データファイル
DBWn
OracleインスタンスオンラインREDOログと制御ファイルが障害直前の情報を持っている
Copyright© 2009, Oracle. All rights reserved.
アーカイブ・ログ・モードオ グ デ タ ピオンラインREDOログ・データのコピー
LGWR
ログライタープロセス
固定長、個定数のファイルに循環書き込みARCn
オンラインREDOログファイル
オンラインREDOログへの記録
固定長、個定数のファイルに循環書き込みARCn
アーカイバプロセス
書き終わったオンライン
・・・
書き終わったオンラインREDOログファイルのコピー
新規にファイルを作成
アーカイブログファイル バックアップ
Copyright© 2009, Oracle. All rights reserved.
新規にファイルを作成
アーカイブ・ログの設定(Enterprise Manager)ア カイブ ログの有効化とログの出力先の設定アーカイブ・ログの有効化とログの出力先の設定
アーカイブ・ログの設定ARCHIVE LOGモードの有効化とログの出力先の指定ログの出力先の指定
Copyright© 2009, Oracle. All rights reserved. 14
ホット・バックアップはなぜ難しい?稼動さ たままバ ク プ稼動させたままバックアップ
フ イルサ バ• ファイルサーバー• ファイル単位で置き換わる
• データベース• ファイルが部分的に かつ頻繁に更新される• ファイルが部分的に、かつ頻繁に更新される
ファイルのコピー中にも、コピー元のファイル内容が更新される
考慮点が増えるかわりに DBMSは障害直前(バックアップ時刻より未来)考慮点が増えるかわりに、DBMSは障害直前(バックアップ時刻より未来)の状態までリカバリする仕組みがある
Copyright© 2009, Oracle. All rights reserved.
更新され続けるファイルのコピーホ バ ク プ なぜ難ホットバックアップはなぜ難しい?
ファイルコピ 開始 ファイルコピー終了
時間
ファイルコピー開始 ファイルコピ 終了
ファイル更新
A A A Aコピー元ファイル
コピーはファイルの
A B B BA A B B
Aバックアップファイル(コピー先)
先頭から
A A ? BA A ?
コピー後にもブロックが更新される
A B 1ブロック内の前半と後半が異なる可能性がある
Copyright© 2009, Oracle. All rights reserved.
ホット・バックアップ
フ イルのバ クア プ( ピ )中にも フ イルの内容が• ファイルのバックアップ(コピー)中にも、ファイルの内容が書き換えられる
• DBMSは専用のホットバックアップツールが付属している• DBMSがファイルにアクセスする仕組みを使ってバックアップ• DBMSがファイルにアクセスする仕組みを使ってバックアップ• Oracle Database はRecovery Manager (RMAN)
• Oracle Databaseは特殊な機能を備えている• OSのファイル・コピー・コマンドでホット・バックアップ可能• ホット・バックアップ・モード (ユーザー管理バックアップ)• よく BEGIN BACKUP / END BACKUP と呼ばれているもの
Copyright© 2009, Oracle. All rights reserved.
ユーザー管理バックアップとRMANRMAN
oracle
Oracleサーバー・プロセス
OSのフ イル ピ プロセス
Oracleインスタンス
oracle
oracledd
OSのファイルコピー・プロセス
OSOS
データファイル(コピー元)
バックアップファイル(コピー先)
データファイル(コピー元)
バックアップファイル(コピー先)
Recovery Managerユーザー管理バックアップ
Oracleインスタンスの仕組みを使ってファイルを読む
Oracleインスタンスが関知しない(ホット・バックアップ・モード使用)
Copyright© 2009, Oracle. All rights reserved.
使ってファイルを読む(ホット バックアップ モ ド使用)
アジェンダ
• バックアップ / リストア / リカバリ の関係
• ホット・バックアップ・モードとストレージ機能• ホット・バックアップ・モード• ストレージ機能でのバックアップ補助
• Recovery Manager (RMAN)・SQL Serverからの移行アセスメント
MySQLからの移行相談
無償技術サービスOracle Direct Concierge
• Recovery Manager (RMAN)• リストア / リカバリの短縮
・MySQLからの移行相談・PostgreSQLからの移行相談・Accessからの移行アセスメント
・Oracle Database バージョンアップ支援・Oracle Developer/2000 Webアップグレ ド相談・Oracle Developer/2000 Webアップグレード相談
・パフォーマンス・クリニック・Oracle Database 構成相談
・Oracle Database 高可用性診断・システム連携アセスメント・システム連携アセスメント・システムセキュリティ診断
・簡易業務診断
htt // l /l /j /di t/ i ht l
Copyright© 2009, Oracle. All rights reserved. 19
http://www.oracle.com/lang/jp/direct/services.html
データベースのホット・バックアップ
制御ファイル• 制御ファイル• OSファイル・コピー・コマンド不可• Oracleインスタンスでのスナップショット生成
つまり RMANでもユ ザ• または制御ファイル再作成スクリプトの生成
グ
つまり、RMANでもユーザー管理バックアップでも、Oracleインスタンスを経由しなければならない。
• オンラインREDOログファイル• OSファイル・コピー・コマンド不可• アーカイブREDOログファイルをバックアップ
な な 。Oracleインスタンスが生成したファイルをコピー(バックアップ)する。
• ア カイブREDOログファイルをバックアップ
• データファイル• ホット・バックアップ・モード• RMAN
Oracleインスタンス管轄外で取得できるホット・バックアップはデータファイルのみ
Copyright© 2009, Oracle. All rights reserved.
制御ファイルのバックアップザ 管 バ ク プユーザー管理バックアップ
SQL> ALTER DATABASE BACKUP CONTROLFILE TO バックアップファイル名方法1. 制御ファイルのバイナリ・スナップショットの取得
Q ックアップファイル名
SQL> ALTER DATABASE BACKUP CONTROLFILE TO TRACE
方法2. 現在のデータベース構成に合わせたCREATE CONTROLFILE文の生成Q
生成されたトレースファイル名がアラートファイルに記録される
Sun Apr 27 20:02:36 2008ALTER DATABASE BACKUP CONTROLFILE TO TRACEBackup controlfile written to trace file /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_2115.trcCompleted: ALTER DATABASE BACKUP CONTROLFILE TO TRACE
トレースファイルの内容はCREATE CONTROLFILE文とリカバリ手順
・・・STARTUP NOMOUNTCREATE CONTROLFILE REUSE ・・・
ト ファイルの内容は 文とリカ リ手順
Copyright© 2009, Oracle. All rights reserved.
REDOログのバックアップ
LGWRログライタープ
LGWR
現在の(CURRENT)オンラインREDOログ・データを今すぐアーカイブにコピーしたい場合
LGWRプロセス
CURRENT
LGWR
CURRENTALTER SYSTEM ARCHIVE LOG CURRENT
CURRENTが1つ進むオンラインREDOログ・ファイル
固定長、個定数のファイルに循環書き込み ARCn
アーカイバプロセス
CURRENTが1つ進む
・・・ ・・・
アーカイバプロセス
アーカイブREDOログ・ファイル
Copyright© 2009, Oracle. All rights reserved.
ホット・バックアップ・モードデ タ ザ 管 バ ク プデータファイルのユーザー管理バックアップ
更新が発生した行のみREDOに記録
ALTER TABLESPACE表領域名 BEGIN BACKUPデータブロック REDOログ
通常モード該当表領域のデータブロックを書き戻す(チェックポイント)該当データファイル・ヘッダのチェックポイントSCNを固定
ALTER TABLESPACE 表領域名 BEGIN BACKUP
デ タ を ピ
データブロック全体をREDOに記録バックアップされたデータファイルのチェックポイントSCN
データファイルをコピー
ALTER TABLESPACE 表領域名 END BACKUPデータブロック REDOログ
時間
※Oracle Database 10g Release 1からは ALTER DATABASE BEGIN BACKUP によってデータベース全体(すべてのデータファイル)をホット・バックアップ・モードにすることも可能になっている ストレージ機能を想定しての機能拡張
該当表領域のデータファイル・ヘッダを通常モードに移行ホット・バックアップ・モード
Copyright© 2009, Oracle. All rights reserved.
時間 することも可能になっている。ストレ ジ機能を想定しての機能拡張。
スプリット・ミラーとスナップショットジ機能 去 ジを 得するストレージ機能で過去イメージを取得する
最新イメージ 最新イメージ
ミラー
通常運用時 通常運用時
最新イメージ 過去イメージ 最新イメージ 過去イメージ
ミラー解除
スプリット・ミラー スナップショット
スナップショット取得
Copyright© 2009, Oracle. All rights reserved.
ストレージ機能が分割する要素デ タ と ジ 間 層も考 るデータファイルとストレージの間の層も考える
表/索引
表領域Oracleのホット・バックアップ・モードはデータファイルのスナップショットを可能にする
ファイルシステム
データ・ファイル
る
ストレージ上にある論理ボリュームとファイルシステムも分割される論理ボリューム
スプリット・ミラー/スナップショットはストレージ・ボリューム(LU)を分割する
イルシステムも分割される
論理ボリューム・マネージャ・ソフトウェアやファイルシステム上にデータベースを構成して論理ボリュ ム・マネ ジャ・ソフトウェアやファイルシステム上にデ タベ スを構成している場合、安全を見てコールド・バックアップで運用されることが多い。⇒ ファイルシステム/論理ボリュームもオフラインにしていることが多い(かもしれない)
Copyright© 2009, Oracle. All rights reserved.
Automatic Storage Management• Oracleデータベース専用のボリューム・マネージャ兼ファイルシステムとして機能する
• ストレージ機能を使用したホット・バックアップ可能各ストレージ・ベンダーとのベスト・プラクティスを公開
従来のディスク管理 ASMのディスク管理
http://www.oracle.com/technology/global/jp/products/database/asm/index.html http://www.oracle.com/technology/products/database/asm/index.html
Oracle構造表/索引
表領域
表/索引
表領域
ファイル構造 ファイルシステム
データファイル
ASMASMファイルシステム
データファイル
ファイル構造
論理ボリューム
ファイルシステム ASMASM論理ボリューム
ファイルシステム
Copyright© 2009, Oracle. All rights reserved.
ストレージ機能でホット・バックアップザ 管 バ ク プ 無停止バ ク プユーザー管理バックアップでI/O無停止バックアップ
BEGIN BACKUPBEGIN BACKUP
ホットバックアップモード
スプリ ト / スナ プシ ト
ホットバックアップモード
バックアップ END BACKUP
スプリット / スナップショット
バックアップ
バックアップ
END BACKUPデータベース本体のファイルとは無関係に、ミラーやスナップショットからデータファイルのバックアップを取得
時間
ファイルコピーコマンドでホットバックアップ
時間
ストレージ機能でホットバックアップ
Copyright© 2009, Oracle. All rights reserved.
バックアップ / リストアの単位ジ機能が分割する単位を考 るストレージ機能が分割する単位を考える
• RMAN / ユーザー管理バックアップ• ファイル単位でバックアップすることを暗黙的に想定
データベース バックアップデ タ
• ストレージ機能でのバックアップ• ストレージ・ボリューム単位ストレ ジ ボリュ ム単位
• 再同期もストレージ・ボリューム単位
データベース ミラー/スナップショット
Copyright© 2009, Oracle. All rights reserved.
デ タ ス ミラ /スナップショット
リカバリ不能になるケース
ストレージ機能でコールド・バックアップ 時刻 A
REDO (時刻 A)
datafile 1 (時刻 A)
REDO (時刻 A)
datafile 1 (時刻 A)ルド ックアッ(オンラインREDOかつ、またはアーカイブREDO込み)
(時刻 )
datafile 2 (時刻 A)
datafile 1 (時刻 A)
datafile 2 (時刻 A)
データベース稼動中
時刻 BREDO (時刻 B)
datafile 1 (時刻 B)
デ タベ ス稼動中
datafile 1が破損 datafile 2 (時刻 B)
リストア (ミラー再同期) REDO (時刻 A)
datafile 1 (時刻 A)
REDO (時刻 A)
datafile 1 (時刻 A)
時間
datafile 2 (時刻 A) datafile 2 (時刻 A)
データベース ミラー / スナップショット
REDOデータ消失
REDOが格納されているボリュームを上書きするとリカバリ不能に!
Copyright© 2009, Oracle. All rights reserved.
デ タ ミラ ナッ ショット
スプリット / スナップショットのグループを分けるを上書き なREDOを上書きリストアしない
制御ファイル
オンラインREDO
制御 ァイル
アーカイブREDO
再同期すると、スプリット後のアーカイブREDOを失う
ファイルとして取り出す
再同期すると、正常ファイル
データファイル
再同期すると、正常ファイルも上書きされる⇒ リカバリが増える
データベース ミラー / スナップショット
ファイルとして取り出すことも検討する
Copyright© 2009, Oracle. All rights reserved.
ハードディスクとアクセスパターン
ディスク
ヘッド移動多ヘッド移動少 ヘッド移動多ッド移動少
ランダム・アクセスシーケンシャル・アクセス
ディスク・アクセス時間の大部分をヘッド位置決めが占める
リストア(データファイルのコピー) リカバリ(更新の再現)
Copyright© 2009, Oracle. All rights reserved.
ヘッド位置決めが占める
ストレージ機能を使用したバックアップ
O l はホ ト バ クア プ モ ドがあるため I/O無停• Oracleはホット・バックアップ・モードがあるため、I/O無停止でバックアップすることも可能• 更新トランザクションをブロックさせない無停止バックアップ• 更新トランザクションをブロックさせない無停止バックアップ• Oracleはハイエンド・ストレージの機能を活かせるDBMS
• リストア / リカバリできるようにバックアップ設計を行うこと• なんでもボリューム再同期が使用できるとは限らない
プASMとの組み合わせの、各ストレージ・ベンダーとのベスト・プラクティスを公開http://www.oracle.com/technology/global/jp/products/database/asm/index.html http://www.oracle.com/technology/products/database/asm/index.html
Copyright© 2009, Oracle. All rights reserved.
バックアップのオフロードジカ タ バData Guard フィジカル・スタンバイ
プライマリ・データベースに影響を与えずにバックアップを取得する
SQL発行 SQL結果
Oracleクライアント(アプリケーションサーバー)
SQL発行 SQL結果
REDO転送
RMAN
リカバリ
プライマリ・データベース スタンバイ・データベース
フィジカル・スタンバイからバックアップ取得可能それをプライマリ・データベースにリストア可能
バックアップ
Copyright© 2009, Oracle. All rights reserved.
それをプライマリ デ タベ スにリストア可能
アジェンダ
• バックアップ / リストア / リカバリ の関係
• ホット・バックアップ・モードとストレージ機能• ホット・バックアップ・モード• ストレージ機能でのバックアップ補助
• Recovery Manager (RMAN)・SQL Serverからの移行アセスメント
MySQLからの移行相談
無償技術サービスOracle Direct Concierge
• Recovery Manager (RMAN)• リストア / リカバリの短縮
・MySQLからの移行相談・PostgreSQLからの移行相談・Accessからの移行アセスメント
・Oracle Database バージョンアップ支援・Oracle Developer/2000 Webアップグレ ド相談・Oracle Developer/2000 Webアップグレード相談
・パフォーマンス・クリニック・Oracle Database 構成相談
・Oracle Database 高可用性診断・システム連携アセスメント・システム連携アセスメント・システムセキュリティ診断
・簡易業務診断
htt // l /l /j /di t/ i ht l
Copyright© 2009, Oracle. All rights reserved. 34
http://www.oracle.com/lang/jp/direct/services.html
ユーザー管理バックアップとRMANRMAN
oracle
Oracleサーバー・プロセス
OSのフ イル ピ プロセス
Oracleインスタンス
oracle
oracledd
OSのファイルコピー・プロセス
OSOS
データファイル(コピー元)
バックアップファイル(コピー先)
データファイル(コピー元)
バックアップファイル(コピー先)
Recovery Managerユーザー管理バックアップ
Oracleインスタンスの仕組みを使ってファイルを読む
Oracleインスタンスが関知しない
Copyright© 2009, Oracle. All rights reserved.
使ってファイルを読む
RMAN
O l インスタンスの仕組みでフ イルを読む• Oracleインスタンスの仕組みでファイルを読む• ホット・バックアップ・モード不要
• 運用ミスを減らす• 操作の大部分を自動化操作の大部分を自動化
• データベースのファイル構成が変化しても自動追尾
• Oracleの内部構造を利用する• リストア/リカバリ時間を短縮する仕組み
Copyright© 2009, Oracle. All rights reserved.
RMAN コマンド・ライン・インターフェース
$ rman target sys/password[@tns_servicename]
Recovery Manager: Release 11.1.0.6.0 - Production on 日 5月 25 13:17:13 2008
Copyright (c) 1982, 2007, Oracle. All rights reserved.
ターゲット・データベース: ORCLFS (データベースID=2826949571)に接続されました
RMAN>
例:例:RMAN> BACKUP DATAFILE ファイル番号 ;
RMAN> BACKUP TABLESPACE表領域名 ;
特定のファイルを指定
表領域を構成するファイルを自動認識
RMAN> BACKUP DATABASE ; データベースを構成するファイルを自動認識(通常はデータベース単位でバックアップ)
Copyright© 2009, Oracle. All rights reserved.
RMANでのバックアップの基本
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON ;
CONFIGURE で設定例) バックアップ時に制御ファイルもバックアップ
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON ;
※設定一覧は RMAN> SHOW ALL
BACKUPでバックアップ開始例) データベースとアーカイブREDOログのバックアップ
RMAN> BACKUP DATABASE PLUS ARCHIVELOG ;
Copyright© 2009, Oracle. All rights reserved.
Enterprise Manager から RMAN を操作
ほとんどの場合は「推奨バックアップのスケジュール」でよい
Copyright© 2009, Oracle. All rights reserved. 39
ほとんどの場合は「推奨バックアップのスケジュ ル」でよい
ASM上のデータベースのバックアップ• Oracleデータベース専用のボリューム・マネージャ兼ファイルシステムとして機能する
• ASM内のファイルはOracleソフトウェアからしか見えない• RMANでバックアップする
従来のディスク管理 ASMのディスク管理
Oracle構造表/索引
表領域
表/索引
表領域
ファイル構造 ファイルシステム
データファイル
ASMASMファイルシステム
データファイル
ファイル構造
論理ボリューム
ファイルシステム ASMASM論理ボリューム
ファイルシステム
Copyright© 2009, Oracle. All rights reserved.
RMANバ ク プ カバ するため もバックアップはリストア/リカバリするためのもの
バ クア プの影響を小さく• バックアップの影響を小さく• Data Guardでバックアップのオフロード• 高速増分バックアップ• 高速増分バックアップ
• リストア / リカバリを高速にリストア / リカ リを高速に• 増分更新バックアップ• ブロック・メディア・リカバリ• データ・リカバリ・アドバイザ
Copyright© 2009, Oracle. All rights reserved.
バックアップからの時間経過
A A A A A AA A A A A A
更新
A B A A B B生成されるREDOログ
更新最後のバックアップから時間が経過するほど生成されるREDOログも増えている⇒ リカバリ時に適用するREDOも増えるA B C A B C
デ タファイル 最新の状態
⇒ リカバリ時に適用するREDOも増える
時間
データファイル 最新の状態
システム復旧時間には 「リストア」 と「リカバリ」 の両方を考慮する必要がある
Copyright© 2009, Oracle. All rights reserved.
増分バックアップ累積と差分累積と差分
全ブロック
A A A A A A A A A A A A A A A A A A
更新全ブロック
BACKUP
A B A A B B B B B B B B
更新
BACKUP
A B C A B C B C B C C C
更新
BACKUPA B C A B C B C B C C C
累積増分バックアップ 差分増分バックアップデータファイル
BACKUP
時間
累積増分 ックアップ 差分増分 ックアップデ タファイル
• レベル0のバックアップとの増分• リストアは2回
• 前回のバックアップとの増分• リストアは差分取得回数+1
Copyright© 2009, Oracle. All rights reserved.
増分バックアップのリストア/リカバリ最後 から カバ 開始最後のリストアからリカバリ開始
A A A A A AA A A A A Aフルバックアップのリストア
差分増分
A B A A B B増分のリストア
適用するREDOログ(リカバリ時間に影響)
累積増分
差分増分
A B C A B C
デ タファイル
増分のリストア
障害直前の状態
時間
データファイル 障害直前の状態
Copyright© 2009, Oracle. All rights reserved.
高速増分バックアップ ブロック・チェンジ・トラッキング・ファイルの有効化ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE 'filename' REUSE;TRACKING USING FILE 'filename' REUSE;
B B B増分バックアップ B B B
デ タベ スサ バ A B A A B Bデータベースサーバー B B B
A B A A B Bデータファイル A B A A B B010011110011001100110011
フルスキャンして増分を判断
高速増分バックアップ(従来の)増分バックアップ
110011
更新ブロックのみを読み込み
Copyright© 2009, Oracle. All rights reserved.
フルスキャンして増分を判断 更新ブロックのみを読み込み
増分バックアップ時の読み込みブロック数SELECT TO_CHAR( COMPLETION_TIME,'YYYY/MM/DD-HH24:MI:SS') as COMPLETION_TIME,
FILE#,DATAFILE_BLOCKS,BLOCKS_READ,USED_CHANGE_TRACKINGFROM V$BACKUP_DATAFILEORDER BY COMPLETION_TIME;
COMPLETION_TIME FILE# DATAFILE_BLOCKS BLOCKS_READ USED_CHANGE_TRACKING
ブロック・チェンジ・トラッキング無効 同じ
-------------------- ---------- --------------- ----------- --------------------2008/05/25-16:31:27 2 95528 95528 NO2008/05/25-16:31:31 4 640 640 NO2008/05/25-16:31:32 1 89600 89600 NO2008/05/25-16:31:36 3 30080 30080 NO2008/05/25 16:31:36 3 30080 30080 NO2008/05/25-16:31:36 5 12800 12800 NO2008/05/25-16:31:43 0 594 594 NO
ブロ ク チ ンジ トラ キング有効 減少
COMPLETION_TIME FILE# DATAFILE_BLOCKS BLOCKS_READ USED_CHANGE_TRACKING-------------------- ---------- --------------- ----------- --------------------2008/05/25-16:35:02 2 95528 245 YES
ブロック・チェンジ・トラッキング有効 減少
2008/05/25-16:35:06 1 89600 33 YES2008/05/25-16:35:06 4 640 1 YES2008/05/25-16:35:10 3 30080 191 YES2008/05/25-16:35:10 5 12800 1 YES2008/05/25-16:35:16 0 594 594 NO
Copyright© 2009, Oracle. All rights reserved.
2008/05/25 16:35:16 0 594 594 NO
増分バックアップのリストア般的な概念一般的な概念
デ タベ スにリストアするとき• データベースにリストアするとき• まずフル・バックアップをデータベースにリストア• その上に増分バックアップをリストア• その上に増分バックアップをリストア
増分2 増分2リストア
フル
増分1
フル
増分1
リストア
リストア
フル
データベース
フル
バックアップ
リストア
Copyright© 2009, Oracle. All rights reserved.
増分バックアップのリストア増分更新バ ク プ増分更新バックアップ
あらかじめ増分を適用したバ クア プを作成しておく• あらかじめ増分を適用したバックアップを作成しておく• 増分適用済みのフル・バックアップをデータベースにリストア
増分2
フル
増分1
フル
リストア
データベース増分適用済みのバックアップ
Copyright© 2009, Oracle. All rights reserved.
増分更新バックアップあらかじめ増分バ ク プを適 おくあらかじめ増分バックアップを適用しておく
イメージ・コピー
A A A A A A A A A A A A A A A A A A
更新
BACKUP
(全ブロックのバックアップ)
A B A A B B
更新
BACKUP B B B RECOVER A B A A B B
更新増分バックアップ
A B C A B C C C
差分増分バックアップ 増分更新バックアップデータファイル
増分バックアップ
BACKUP A B C A B CRECOVER
時間
差分増分バックアップ 増分更新バックアップデ タファイル
前回のバックアップからの増分 イメージコピーに増分を適用
Copyright© 2009, Oracle. All rights reserved.
増分更新バックアップ
(0) BACKUP AS COPY DEVICE TYPE DISK DATABASE;0. 最初にイメージコピーを取得
(1) BACKUP INCREMENTAL LEVEL 1 DEVICE TYPE DISK TAG ‘tag_name' DATABASE; 1. 増分バックアップ
(2) RECOVER COPY OF DATABASE;
基本的な増分バ クア プ マンドでの手順
2. 増分の適用
基本的な増分バックアップ・コマンドでの手順
(1) BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPYWITH TAG ‘tag_name' DATABASE; 1. 増分バックアップ
(イメージコピーがなければ取得)
(2) RECOVER COPY OF DATABASE;
増分更新バックアップ用の構文での手順
2. 増分の適用
Copyright© 2009, Oracle. All rights reserved.
リストア / リカバリの単位
基本的には「フ イル 単位でリストアする• 基本的には「ファイル」単位でリストアする• 破損ファイル内の正常なデータブロックも過去の状態に戻る• 稼働中のリストア/リカバリは該当表領域をオフラインに• 稼働中のリストア/リカバリは該当表領域をオフラインに
デ タフ イル 1 デ タフ イル 1データファイル 1
データファイル 2
データファイル 3
データファイル 1
データファイル 2
データファイル 3リストア
デ タファイル 3
表領域(オフライン) バックアップ領域
デ タファイル 3
Copyright© 2009, Oracle. All rights reserved.
ブロック・メディア・リカバリり さな粒度 カバファイルより小さな粒度でリストア&リカバリ
O l は「デ タブロ ク 単位で破損を検出できる• Oracleは「データブロック」単位で破損を検出できる• データブロック単位でリストア/リカバリ可能• 正常データブロックは継続してアクセス可能• 正常デ タブロックは継続してアクセス可能
データファイルリストア
表領域(オンライン)
デ タファイル
バックアップ領域
Copyright© 2009, Oracle. All rights reserved.
ブロック・メディア・リカバリ実行例
デ タ ブロ ク障害を検知• データ・ブロック障害を検知SQL> select * from employees;ERROR at line 1:ORA-01578: ORACLE data block corrupted (file # 5, block # 84)ORA-01110: data file 5: '/u01/app/oracle/oradata/orcl/example01.dbf'
• データ・ブロック障害箇所の特定SQL> select * from v$database block corruption;SQL> select * from v$database_block_corruption;
FILE# BLOCK# BLOCKS CORRUPTION_CHANGE# CORRUPTIO------ ------ ------ ------------------ ----------------
5 84 1 0 CORRUPT5 84 1 0 CORRUPT
Copyright© 2009, Oracle. All rights reserved.
ブロック・メディア・リカバリ実行例
RMAN> blockrecover datafile 5 block 84;
allocated channel: ORA DISK 1allocated channel: ORA_DISK_1channel ORA_DISK_1: SID=128 device type=DISK
channel ORA_DISK_1: restoring block(s)channel ORA_DISK_1: specifying block(s) to restore from backup setrestoring blocks of datafile 00005channel ORA_DISK_1: reading from backup piece /u01/app/oracle/flash_recovery_area/ORCL/backupset/2008_09_18/o1_mf_nnndf_TAG20080918T165020_4f422h3x_.bkpchannel ORA_DISK_1: piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2008_09_18/o1_mf_nnndf_TAG20080918T165020_4f422h3x_.bkp tag=TAG20080918T165020channel ORA_DISK_1: restored block(s) from backup piece 1channel ORA_DISK_1: block restore complete, elapsed time: 00:00:07
starting media recoverymedia recovery complete, elapsed time: 00:00:03
Finished recover at 18-SEP-08
Copyright© 2009, Oracle. All rights reserved.
自動ブロック・メディア・リカバリOracle Database 11g Release 2 Active Data Guardブロック破損を検出しても、Oracleクライアントにはエラーを返すことなく自動修復
Oracleクライアント(アプリケーションサーバー)
(1)SQL発行
(4)スタンバイからブロック転送
(6)SQL結果(エラーなし)
REDOによるリカバリ(2)SQL実行⇒ ブロック破損検出
REDO転送
(3)ブロック転送を指示
(5)リカバリるリ リブ ック破損検出
プライマリ・データベース フィジカル・スタンバイ・データベース
(3)ブロック転送を指示
Copyright© 2009, Oracle. All rights reserved.
プライマリ デ タ ス フィジカル スタン イ デ タ ス
ASMの自動修復Oracle Database 11g Release 1ASMのミラーから破損領域を自動修復し、破損による障害確率を下げる
Oracle
(1)破損を検出
Oracle
ASMは2重化または3重化まで可能
インスタンス
ASM
(3)修復指示インスタンス
ASM
位置情報
インスタンス
(4)修復
インスタンス
(2)ミラーから読み込み読
ASMディスクグループASMディスクグループ
ディスク書き込み 破損検出時
Copyright© 2009, Oracle. All rights reserved.
データ・リカバリ・アドバイザ復 ドバ を提復旧のアドバイスを提示
障害復旧 修復 た時間• 障害復旧1.障害の診断2 復旧手順の検討
修復に要した時間
障害解析に要した時間人間が考えている時間
2.復旧手順の検討3.復旧操作
障害解析に要した時間
総ダウンタイム
リストア/リカバリの時間
• データ・リカバリ・アドバイザ• 障害の診断を行う
総ダウンタイム
• 復旧手順を構成する
ダウンタイムを最小化Oracle Database 11g Release 1 から
Copyright© 2009, Oracle. All rights reserved. 57
データ・リカバリ・アドバイザ復 ドバ を提
デ
復旧のアドバイスを提示1. 障害13595を解決するために、Oracleサポート・サービスに連絡してください: データファイル4: 'D:¥ORACLE¥ORADATA¥ORCL¥USERS01 DBF'は破
1. データベースの障害リストを参照RMAN> list failure;RMAN> list failure;
D:¥ORACLE¥ORADATA¥ORCL¥USERS01.DBF は破損しています
2. 意図せずにファイルD:¥ORACLE¥ORADATA¥ORCL¥SYSTEM01.DBFの名前の変更または移動が行われていた場合リストアします
2. 障害に対するアドバイスを取得RMAN> advise failure;RMAN> advise failure;
修復スクリプト: d:¥oracle¥diag¥rdbms¥orcl¥orcl¥hm¥reco_803716847.hm
修復スクリプトの内容:
3. 自動修復の実行RMAN> repair failure;RMAN> repair failure;
修復スクリプトの内容:restore database;recover database;alter database open;
修復スクリプトを実行しています
・・・・
メディア・リカバリを開始しています
メディア・リカバリが完了しました。経過時間: 00:00:03recoverが完了しました(完了時間: 08-12-19)データベースがオープンしました。
障害の修復が完了しました
Copyright© 2009, Oracle. All rights reserved. 58
データ・リカバリ・アドバイザからも使 能Oracle Enterprise Managerからも使用可能
Copyright© 2009, Oracle. All rights reserved.
まとめバ ク プ カバ するため もバックアップはリストア/リカバリするためのもの
• ユーザー管理バックアップ• ユ ザ 管理バックアップ• ホット・バックアップ・モード• ストレージ機能での無停止バックアップ• リストア/リカバリ可能なバックアップ設計を行うことリストア/リカバリ可能なバックアップ設計を行うこと
• Recovery Manager• Data GuardでバックアップのオフロードData Guardでバックアップのオフロ ド• 増分バックアップをあらかじめ適用する増分更新バックアップ• リストア/リカバリを局所化するブロック・メディア・リカバリ• 復旧方法のアドバイスを行うデータ・リカバリ・アドバイザ復旧方法のアド イスを行うデ タ リカ リ アド イザ
• 破損からの自動修復を試みる• ASMの自動修復ASMの自動修復• Active Data Guardの自動ブロック・メディア・リカバリ• それでもバックアップは取得すること
Copyright© 2009, Oracle. All rights reserved.
OTNOTN×ダイセミ×ダイセミ でスキルアップでスキルアップ!!!!・技術的な内容について疑問点を解消したい!・一般的なその解決方法などを知りたい!・セミナ資料など技術コンテンツがほしい!
Oracle Technology Network(OTN)を御活用下さい。セミナ資料など技術コンテンツがほしい!
http://otn.oracle.co.jp/forum/index.jspa?categoryID=2
技術的な疑問点は、OTN掲示版の「データベース一般」へ
http://otn.oracle.co.jp/forum/index.jspa?categoryID 2
※OTN掲示版は、基本的にOracleユーザー有志からの回答となるため100%回答があるとは限りません。ただ、過去の履歴を見ると、質問の大多数に関してなんらかの回答が書き込まれております。
「データベース一般」へ
過去のセミナ資料、動画コンテンツはOTNの
http://www.oracle.com/technology/global/jp/ondemand/otn-seminar/index.html
「OTNコンテンツ オン デマンド」へ※ダイセミ事務局にダイセミ資料を請求頂いても、お受けできない可能性がございますので予めご了承ください。
Copyright© 2009, Oracle. All rights reserved. 61
ダイセミ資料はOTNコンテンツ オン デマンドか、セミナ実施時間内にダウンロード頂くようお願い致します。
OTNOTNセミナーセミナー オンデマンドオンデマンド コンテンツコンテンツ期間限定にて ダイセミの人気セミナ を動画配信中!!
http://www.oracle.com/technology/global/jp/ondemand/otn-seminar/index.html
期間限定にて、ダイセミの人気セミナーを動画配信中!!ダイセミのライブ感はそのままに、お好きな時間で受講頂けます。
http://www.oracle.com/technology/global/jp/ondemand/otn seminar/index.html
※掲載のコンテンツ内容は予告なく変更になる可能性があります。いずれも期間限定での配信です 気になる ンテンツは早めにダウンロ ド頂くことをお勧めいたします
Copyright© 2009, Oracle. All rights reserved. 62
いずれも期間限定での配信です。気になるコンテンツは早めにダウンロード頂くことをお勧めいたします。
ITプロジェクト全般に渡る無償支援サービスOracle Direct Conciergeサ ビスメニュ
業務改善計画の作成支援• 業務診断サービス• BIアセスメントサ ビス
Oracle Direct Conciergeサービスメニュー
経営企画
• BIアセスメントサービスシステム運用状況の診断•パフォーマンス・クリニック・サービス•システム・セキュリティ診断サービスデ タ管理最適化サ ビス
運用 IT 企画システム企画の作成支援•業務診断サービス•BIアセスメントサービス
•データ管理最適化サービス
構築 設計RFP/提案書の作成支援
システム構築時の道案内•Access / SQL Serverからの移行•MySQL / PostgreSQLからの移行
•BIアセスメントサービス•仮想化アセスメントサービス•Oracle Database 構成相談サービス•Oracle Database 高可用性クリニック
MySQL / PostgreSQLからの移行•Oracle Database バージョンアップ支援•Oracle Developer Webアップグレード•システム連携アセスメントサービス
Copyright© 2009, Oracle. All rights reserved. 63
あなたにいちばん近いオラクル
O l Di tOracle Directまずはお問合せくださいまずはお問合せください
Oracle Direct 検索
まずはお問合せくださいまずはお問合せください
O ac e ect 検索
システムの検討・構築から運用まで、ITプロジェクト全般の相談窓口としてご支援いたします。
システム構成やライセンス/購入方法などお気軽にお問い合わせ下さい
Web問い合わせフォーム フリーダイヤル
システム構成やライセンス/購入方法などお気軽にお問い合わせ下さい。
http://www.oracle.co.jp/inq_pl/INQUIRY/quest?rid=28専用お問い合わせフォームにてご相談内容を承ります。
※フォームの入力には Oracle Direct Seminar申込時と同じ
0120-155-096※月曜~金曜 9:00~12:00、13:00~18:00※フォ ムの入力には、Oracle Direct Seminar申込時と同じ
ログインが必要となります。※こちらから詳細確認のお電話を差し上げる場合がありますので、ご登録されている連絡先が最新のものになっているか、ご確認下さい。
※月曜 金曜 9:00 12:00、13:00 18:00
(祝日および年末年始除く)
Copyright© 2009, Oracle. All rights reserved. 64
以上の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません 以下の事項は マテリアルやコード 機能を提供することをコミットメンできません。以下の事項は、マテリアルやコ ド、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。ては、弊社の裁量により決定されます。
Oracle、PeopleSoft、JD Edwards、及びSiebelは、米国オラクル・コーポレーション及びその子会社、関連会社の登録商標です。その他の名称はそれぞれの会社の商標の可能性があります。
Copyright© 2009, Oracle. All rights reserved. 65