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

    Oracleで統計情報を別のユーザー(スキーマ)に移行する方法

    Oracleでは統計情報のバックアップやインポートが可能ですが、別のユ…

  2. Oracle

    【Oracle】DataPumpの対話式コマンドモードを抜ける方法

    Oracle DataPump(impdp, expdp)では、 at…

  3. Oracle

    【Oracle】セッションがKILLEDのまま残り続けてしまう時の対処方法

    Oracleで特定のセッションを強制終了しようと ALTER SYST…

  4. MaxGauge

    MaxGaugeインストール:ORADEBUGを利用してIPCを確認する方法

    MaxGaugeをインストールする際に、監視対象のインスタンスのIPC…

  5. Oracle

    Database linkのimpdpでORA-39113エラーが発生した原因

    Oracle Database SE 10.2.0.1 から Orac…

  6. Oracle

    【Oracle】表領域を新規で作成してユーザーも作成する手順

    Oracle Databaseで、新規で表領域を作成しその表領域をデフ…

コメント

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

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

最近の記事

  1. さくらのVPSにCentOS 5をインストールする方法
  2. PHP PhantomJSでFatal error: Unc…
  3. 【Oracle】DataPumpの対話式コマンドモードを抜け…
  4. CentOS7のPHP5.6にPhpSpreadsheetを…
  5. Azure仮想マシン(CentOS 7)のStandardデ…
PAGE TOP