Oracleに関するメモ

バックアップ、REDOログ関連の備忘メモ

論理バックアップ

export/importを使ったバックアップ/リストアのこと

物理バックアップ

OSコマンドによるファイルコピー、もしくはRMANを使ってバックアップ

  • 一貫性バックアップ=コールドバックアップ
    • 事前にサービスを止める > net stop <oracleサービス名>
    • DBを止めたあとで .dbf, .ctl, .log ファイルを退避する
    • init.ora, spfile.oraも取って置きたい
  • 非一貫性バックアップ=ホットバックアップ(DBを動かしたまま)
    • アーカイブログモードでの運用が前提。
    • 表領域をバックアップモードにして OCOPYコマンドでコピーする

REDOログへの書き込みを行うモード

  • アーカイブモード
    1つのオンラインREDOログを使い切ってスイッチするタイミングで 新しくアーカイブREDOログファイルを作ってコピーする
  • 非アーカイブモード
    すべてのREDOログファイルを使い切ると最初のRODOログファイルを循環的に使う

アーカイブログモードの確認

  1. sysで接続
  2. >archive log list;
    SQL> archive log list;
    データベース・ログ・モード     非アーカイブ・モード
    自動アーカイブ                 使用禁止
    アーカイブ先                    D:\oracle\ora92\RDBMS
    最も古いオンライン・ログ順序   122
    現行のログ順序               124

アーカイブログモードの設定

  1. sysで接続
  2. DBを停止(shutdown)
  3. マウントモードで起動(startup mount)
  4. 初期化パラメータの設定
    LOG_ARCHIVE_START=TRUE
    LOG_ARCHIVE_DEST=<path>   <--ここに十分な容量が必要。
    LOG_ARCHIVE_FORMAT=arch%s.arc
  5. モード変更
    >alter database archivelog;  (オフにするときは noarchivelog)
  6. DBオープン
    >alter database open;

強制的にアーカイブを出力したいとき

>alter system archive log current; 

(アーカイブログモード時)

リストア手順

  1. DBを停止
  2. バックアップしたファイルを戻す(REDOログ以外)
  3. DBをマウント状態で起動 startup mount
  4. recoverコマンドを打つ
    >recover database;
    (prompt)auto
  5. alter database open;

注意点

ログアーカイブモードになっているときはアーカイブ先のフォルダ、例えばD:\oracle\ora92\RDBMSにどんどんアーカイブREDOログがたまっていくので、十分な容量が確保されている必要がある。また、コールドバックアップをしたらその時点までのアーカイブREDOログはいらなくなるので削除するようにしておかないといつかディスクがパンクするので注意。きちんとした運用を考えないままログアーカイブモードにするのは控えるべし。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-08-06 (土) 15:11:38 (62d)