Oracle

  (最終更新日:2014.09.26)

[解決済] Create Indexしたらなぜか『オブジェクト統計はロックされています』でエラーになった

DataPumpでデータをインポートした後に、Create indexを実行したところ「ORA-38029: オブジェクト統計はロックされています」というエラーで弾かれてしまいました。

本人的にはロックした覚えもなし。
どうやらいろいろOTNなどで調べてみたところ、原因は不明だけど統計オブジェクトがロックされてしまうことがあるようです。(もっと深く調査すれば原因が判明しそうですが)

2014/09/26 16:56:30 CREATE INDEX "HOGE"."TABLE1_INDX1" ON "HOGE"."TABLE1" ("ID", "NAME", "TIME")
2014/09/26 16:56:30 *
2014/09/26 16:56:30 行1でエラーが発生しました。:
2014/09/26 16:56:30 ORA-38029: オブジェクト統計はロックされています

ロックを解除する

解決策としてはロックされているオブジェクトのロックを解除してあげる必要があります。

# su - oracle
$ sqlplus sys as sysdba

下記プロシージャを実行します。

DECLARE
    CURSOR CUR IS SELECT TABLE_NAME FROM ALL_TABLES WHERE OWNER='HOGE';
BEGIN
    FOR CUR_REC IN CUR LOOP
        DBMS_STATS.UNLOCK_TABLE_STATS('HOGE', CUR_REC.TABLE_NAME);
    END LOOP;
END;
/

これで完了です。
もう一度Create Indexを実行したところ問題なく作成されました。

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

関連記事

  1. Oracle

    アーカイブログを削除する方法

    アーカイブログ・モードの時にガンガン作成されるアーカイブログ・…

  2. Oracle

    SSLを無効化して非SSL(http)でOEMにアクセスする方法

    最近のIE(例えばIE10も)でOracleのOEMにアクセスすると、…

  3. Oracle

    【Oracle】テーブル指定で統計情報をバックアップ、インポートする方法とポイント

    Oracle Databaseで、テーブルを指定して統計情報をバックア…

  4. Oracle

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

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

コメント

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

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

最近の記事

  1. expdpが「すでに使用されているオブジェクト名です」と失敗…
  2. VMware Server 1系(Linux)のバージョンを…
  3. 【NetApp】AutoSupportMailの宛先を変更す…
  4. Mattermostを開くと502エラーが表示される時
  5. 【CentOS 7+Firewalld】FTPサーバへパッシ…
PAGE TOP