Oracle

  (最終更新日:2017.07.14)

【Oracle】統計情報のバックアップとリカバリの方法

Oracleの統計情報をユーザー単位でバックアップする方法と、バックアップファイルからリカバリする方法です。バックアップには旧来のexpコマンドを利用します。(expdpではないです)

今回は対象のDBユーザーを dbhoge とし、保存用のテーブルを SAVE_STATS_HOGE としています。

またテーブル単位でのバックアップとインポートは下記で紹介中です。



全ての統計情報をバックアップする

全ての統計情報をバックアップし、ファイルとして出力します。

# su - oracle
$ sqlplus sys as sysdba

SQL> exec DBMS_STATS.DROP_STAT_TABLE (ownname => 'DBHOGE',stattab => 'SAVE_STATS_HOGE');
SQL> exec DBMS_STATS.CREATE_STAT_TABLE('DBHOGE', 'SAVE_STATS_HOGE');
SQL> exec DBMS_STATS.EXPORT_SCHEMA_STATS('DBHOGE', stattab =>'SAVE_STATS_HOGE');
SQL> quit

$ exp dbhoge/dbhoge_pass@orcl file=>(gzip > /tmp/stat_table.exp.gz ) tables=SAVE_STATS_HOGE statistics=none

これで stat_table.exp.gz というバックアップファイルが出力されます。

バックアップファイルからインポートする

出力されたバックアップファイルから統計情報をインポートします。

# su - oracle
$ sqlplus sys as sysdba

// 既にバックアップ用に作成された統計情報テーブルが存在していれば事前に削除
SQL> exec DBMS_STATS.DROP_STAT_TABLE (ownname => 'DBHOGE',stattab => 'SAVE_STATS_DBHOGE');
SQL> quit

// impコマンドから統計情報テーブルをインポート
$ imp dbhoge/dbhoge_pass@orcl file=<(gunzip -c /tmp/stat_table.exp.gz) IGNORE=Y FULL=Y

$ sqlplus sys as sysdba

// バックアップ用の統計情報テーブルから統計情報をインポート(事前に削除してから)
SQL> EXECUTE DBMS_STATS.DELETE_SCHEMA_STATS('DBHOGE');
SQL> exec DBMS_STATS.IMPORT_SCHEMA_STATS(ownname => 'DBHOGE' ,stattab => 'SAVE_STATS_DBHOGE');
SQL> quit

これで完了です。

スポンサーリンク
スポンサーリンク

関連記事

  1. Oracle

    Linux版Oracle Database 11gの起動手順と停止手順

    すごく基礎的なことなんですが、Linux版のOracle Da…

  2. Oracle

    OracleのセッションIDからOSのプロセスIDを調べる方法

    Oracleで障害調査を行いたいときなどに、sidからOSのプロセスI…

  3. Oracle

    Oracleでカラムのデータをほぼ同じ文字数の文字で置換する方法

    つまりどういうことだってばよ!!!って言われそうですが。 噛み砕いてい…

  4. Linux

    LinuxカーネルパラメータSEMMNSとSEMMSLの値を確認する方法

    OracleでPROCESSESパラメータの値を変更する際には、OSカ…

  5. Oracle

    expdpが「すでに使用されているオブジェクト名です」と失敗する時の対処方法

    expdp実行時に、下記のエラーで処理が失敗してしまう時の対処方法のメ…

  6. Oracle

    【SQL*Plus】SYSDBA権限でリモートサーバに簡易接続ネーミングで接続する方法

    リモートのOracleサーバにSQL*Plusで接続する際に、SYSD…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

最近の記事

  1. ColdFusion 2018にUpdate 8を適用したら…
  2. 【vsftpdを守る】CentOS 7にfail2banをイ…
  3. nologinを指定したユーザーでFTP接続するとパスワード…
  4. CentOS 7にTomcatをインストールして起動したらエ…
  5. NetApp / cDot : AutoSupport Ma…
PAGE TOP