Oracleのアーカイブログについて。
この記事の内容はコチラです
- 「アーカイブログ」とは?
- 「アーカイブログ」はなぜ必要か?
今回は、Oracleのアーカイブログについて紹介します!
OracleのREDOログファイル
Oracleには通常のログ以外に「アーカイブログ」があります。
「アーカイブログ」とは何でしょう?
REDOログファイルとは?
「アーカイブログ」の説明の前に「REDOログ」ファイルをみていきましょう!なぜなら「アーカイブログ」と「REDOログ」は密接な関係があるからです。
2種類のログ
- REDOログ
- アーカイブログ
「REDOログファイル」とはOracleの更新情報が入っているファイルです。
例えば、データベースの「従業員テーブル」の「電話番号」を更新します。その後、先ほどの電話番号が間違いだとわかり、もう一度「電話番号」を更新したとします。
電話番号を2回更新しました。この場合、最後の結果がデータベースの本体、いわゆるデータファイルに書き込まれます。しかし、実はOracleは2回の更新情報も記録しているのです。その履歴が「REDOログファイル」に残っているのです。
つまり、Oracleの「REDOログファイル」は「更新履歴のファイル」です。
- 最後の結果 →データファイルに記録されます
- 更新履歴 →REDOログファイルに記録されます
REDOログファイルの問題点
では、ここで障害について考えてみます。もし何らかの障害で先ほどの電話番号が消えてしまったら?DB管理者として大問題ですよね!
ここでいう「消える」というのは「データファイルから消える」という意味です。データが消えてしまったら大問題ですが、データファイルから消えてしまっても、「REDOログファイル」の中に更新履歴は残っているので、復旧はできるわけです。
が、この「REDOログファイル」、ひとつ問題があります。REDOログファイルは容量に上限があり、上限一杯になると上書きしてしまうのです。
先ほど電話番号を更新しましたが、他の人がその後大量のデータ更新をしたら「REDOログファイル」からその情報が消えてしまいます。
困りますよね?こうなってしまったら障害発生時に復旧できませんよね?そこで登場するのが「アーカイブログファイル」です。
アーカイブログファイル
「REDOログファイル」が一杯になったら上書きされてしまい、更新履歴が消えてしまいます。更新履歴が消えると困ってしまうので、そうなる前にサクっと別のログファイルに退避しておくんです。もちろん上書きされません。
これが「アーカイブログ」です。「アーカイブログファイル」は上書きされないので、「REDOログファイル」が一杯になる都度どんどん作成されていきます。これなら絶対に消えることはありません。安心です。
でも、逆に管理者が定期的に消さないとサーバーの容量が一杯になってしまうデメリットもあるので注意が必要です。通常は自動的に消えるように設定しておきます。
アーカイブログ運用にするには
また、アーカイブログ運用にするには設定する必要があります。詳細はこちらから。
アーカイブログのまとめ
- Oracleの更新履歴は「REDOログファイル」にどんどん上書きされます。
- 更新履歴が消えないよう「REDOログファイル」のバックアップとして「アーカイブログファイル」に残しておきます。
- アーカイブログファイルは自動では消えない
以上、Oracleの「アーカイブログ」の解説でした。
コメント
アーカイブログ よーくわかりました!
自動で削除するとは??なにか設定するところがありますか?
アーカイブログを自動で削除する方法はこちらを読んでください。
→アーカイブログを自動で削除する方法(RMAN)
記事にもリンクを追加しました。