REDOログに関する検証 その5
< REDOログに関する検証 その5 > ペンネーム つけまい
— 内部構造を理解し
パフォーマンスの向上に役立てる —
前回は、REDOログ・バッファ(ファイル)へ書き込まれる情報についての解説
を行った。
今回は、DUMPコマンドを用いて、実際のREDOログ・ファイルの中身を覗いてみ
よう。
*********** REDOログ・ファイルの中身 ***********
REDOログ・ファイルには、前回で説明したように1つのトランザクションに対し
て、REDOレコード単位で記録されている。したがって、REDOログ・ファイルと
は、REDOレコードの集まりということになる。そのことを確認するために、実
際にデータベースに対して変更を行い、その際に書き出される内容を、REDOログ・
ファイルのDUMP機能を用いて、中身を覗いてみよう。
データベースに対して更新処理を行う前に、まず、現在のトランザクションが
どのREDOログ・ファイルに書き出されるかを知る必要がある。
以下の図は、現在どのREDOログ・ファイルに書き出しを行っているかを知るた
めのSQL文及び、トランザクション処理を記述したものである。
まず始めに、V$LOGビューより、現在書き込みが行われているREDOログ・ファイ
ルを調べる。STATUSがCURRENTとなっているGROUPが、現在書き込みが行われて
いるREDOログ・グループである。
次に、V$LOGFILEビューより、現在書き込みが行われているグループの、OS上の
ファイル名を調べる。
次に、UPDATE文を発行した後、書き出しが行われているREDOログ・ファイルに
対して、ALTER SYSTEMコマンドを用いて、REDOログ・ファイルのDUMPを取得す
る(下図参照)。
REDOログ・ファイルのDUMP
記載しているREDOログ・ファイルのDUMPは、トランザクション処理部分のみを
抜粋したものである。ご覧のように、4つのチェンジベクターが記録されている。
この4つのチェンジベクターは、次の1~4に対する変更を記録したものである。
1.ロールバックセグメントのトランザクション表 2.ロールバックセグメントのデータブロック 3.テーブルWORK03のブロック 4.コミット情報
次回は、DUMP中の重要な部分について、もう少し詳しく解説を行う予定である。
読者の方々も、時間があれば、是非、DUMPの取得を試みていただきたい。
以上 夏バテ寸前の茅ヶ崎にて