ORACLE10Gの表領域再編成:レスポンス改善の方法とは?

このQ&Aのポイント
  • ORACLE10Gで急速にレスポンスが悪化した場合、表領域の再編成が有効です。特にSYSAUX、SYSTEM、TEMP、UNDOTBS1、USERSの使用状況に注意しましょう。
  • ただし、一部の表領域(SYSTEM、SYSAUX、TEMP、UNDO、オフラインまたは読取り専用)は再編成できませんので注意が必要です。
  • 効果的なレスポンス改善方法では、表領域の適切な再編成だけでなく、データの最適化やインデックスの作成などを検討することも重要です。
回答を見る
  • ベストアンサー

表領域の再編成

こんにちわ。 いまORACLE10Gで,あるテーブルに20万件データを挿入し,耐久テストをした後で,データ削除したところ, 急にレスポンスが悪化したようです。 表領域の使用状況は, SYSAUX :96.55% SYSTEM :98.99% TEMP :99.89% UNDOTBS1:51.91% USERS :99.63% となっています。 このようなときは,表領域の再編成をすれば良いのでしょうか? ちなみに,TEMPを再編成しようとすると, 「選択した表領域は再編成できません。Oracleでは、SYSTEM、SYSAUX(10i以上)、一時、UNDO、オフラインまたは読取り専用の表領域の再編成はサポートしていません」というメッセージが表示され,再編成できません。 どうすれば,レスポンスが改善するでしょうか? 初歩的なことかもしれませんが,教えてください。 宜しくお願いします。

  • Oracle
  • 回答数1
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

データを消した表のHWMが大量件数を投入したままの状態と考えられます。 解消するには、データをエクスポートして、テーブルをdropまたはtruncateして、データをインポートしてください。

tatsurou
質問者

お礼

taka_tetsuさん レスポンスが改善しました。ありがとうございます。

関連するQ&A

  • 表領域拡張の必要性

    Windows2003サーバ上でORACLE10g リリース2を使っています。 ORACLEのインストールは、ほぼデフォルト設定にしてあります。 ORACLEのエンタープライズマネージャで表領域を見ると SYSAUX  サイズが550Mで使用量が540M、セグメント領域の管理=自動 SYSTEM  サイズが560Mで使用量が555M、セグメント領域の管理=手動 となっていました。 オーバーフローしないか心配なのですが、セグメント領域を拡張する必要はあるのでしょうか?。 ちなみにテーブルの表領域はUSERS で残りも60%以上あります。 よろしくお願いいたします。

  • UNDO表領域

    お世話になります。 Oracle9i 以降のUNDO表領域に関してお聞きしたいのですが。 Create tablespace 文でUndo表領域を作成できますが、 複数作成するメリットなどはどのようなことが考えられるのでしょうか? インストール時に存在する、UNDO表領域のサイズを大きくすれば いいような気がするのですが。 以上 よろしくお願いします。

  • Data Pump で大量データインポートの際のUNDO表領域、TEMP表領域不足エラー解消法のついて

    いつも多くの方々にお世話になっております。 どうしても解決できなかったので、質問を書き込ませていただきました。 大量データのテーブルをDataPump の Impdp でインポートしようとした際に、 UNDO表領域やTEMP表領域不足によりインポートが中断されてしまうので、 その解消法を探しています。 単純にTEMP表領域やUNDO表領域のサイズを大きくすれば解決できるのですが、 ディスクの容量に限りがあり、TEMP表領域やUNDO表領域のサイズを700MBのまま、 大量データをImpdp でインポートできるようにしたいのですが、そうするとうまくいきません。 以前からあったImport の場合でしたら、「COMMIT=Y」としていすれば、 大量データであっても、TEMP表領域やUNDO表領域のサイズを700MBのまま、インポートできました。 しかし、Impdp には「COMMIT=Y」がサポートされなくなったとOTNのドキュメントにも書かれていました。 従来のImport を使えばインポートできるのですが、非常に時間を要するため、 TEMP表領域やUNDO表領域のサイズを気にせずとも Data Pump のImpdp を用いてインポートできる方法を ご存知の方がいらっしゃいましたら、ご教授願えませんでしょうか?

  • UNDO表領域の拡張について

    Oracle9iにてUNDO表領域を自動拡張ではないため手動にて拡張(512M→1024M)しようとしております。 UNDO表領域:/oradata/undotbs01.dbf 表領域をオフライン(alter tablespace '/oradata/undotbs01.dbf' offline;)にすることなく以下のSQL文のみで拡張することは可能でしょうか? SQL> alter database datafile '/oradata/undotbs01.dbf' resize 1024M; ご教授の程、宜しくお願い致します。

  • Oracleの一時表領域について

    毎々お世話になっております。 一時表領域が肥大化してきたため、オンラインで縮小処理をしました。 http://www.roy.hi-ho.ne.jp/montague/lilical-oracle.html TEMP01を使用していたため、TEMP02を作成しTEMP01をオフラインにしました。 そしてdropしようとすると失敗しました。エラーが出たらしいのですが、後輩が消してしまったため わかりません。またTEMP01の物理ファイルも削除してしまったようです。 今の一時表領域をみるとTEMP02がオンラインになっていました。正常に使用もされていましたが、 TEMP01が中途半端に残っています。TEMP01もオンラインになっていますが、サイズは0MBとなっています。TEMP01をオフラインにするSQLを入力するとオフラインになりましたというメッセージが出ます。しかしDROPしようとすると、使用できない旨のエラーがでます。 解決方法が分からなくて困っています。 バックアップファイルもないため困っています。 このような状況になった方はおられますでしょうか?お手数ですがご教授ください。

  • 表領域の違うEXPORT IMPORT

    現在ORACLE8iでSYSTEMという表領域で、データを保持しています。 このデータを異なるオラクルサーバの、例えばAAAという表領域にimportさせたいです。 http://www.geocities.jp/principal_focuses/tech/ora/ora_tech/ora_tech_031.html 等もみたのですが、少しわかりづらかったです・・・。 一番効率よく、EXPORT及びIMPORT出来る方法はありますでしょうか。 ちなみに、AAAの領域には既にテーブルがCREATEされている状態です。

  • Oracleのsystem表領域について

    ORACLE初心者です。 system表領域がいっぱいになる現象が発生しました。(使用率98%) 原因調査を依頼されましたが、system表領域がどのような要素で 構成され、増えていくのか分かりません。 (環境) Windows2000Server Oracle 8.1.6 WorkGroupServer ユーザのデフォルト表領域はちゃんと指定しているとの事です。 何か情報がありましたら、教えていただきたくお願いします。

  • 表領域に追加したファイルの削除

    教えてください。 DB作成時にデフォルトで作成されていた「TEMP」と「CWMLITE」の表領域に誤ってデータファイルを追加してしまいました。 (TEMP02.dbf、CWMLITE02.dbfという風に) 追加したファイルを削除するには該当のデータファイルを オフラインにして実際にOS上からファイルを削除するという 手順で問題無いのでしょうか? それともOracle側でさらに処理が必要でしょうか?

  • UNDO表領域(AUTOEXTENDのデフォルト値)

    Oracle9iを使っています。 インスタンス作成時に自動UNDO管理モードで、UNDO表領域を指定しています。(CREATE UNDO TABLESPACE ~) 名前、ファイル、サイズ等は指定しているのですが、「AUTOEXTEND ON|OFF」パラメータを指定していません。 (1)この場合、AUTOEXTENDのデフォルト値はON,OFFどちらになっているのでしょうか? (2)UNDO表領域を使い切った場合、AUTOEXTENDの値によってどのような動作をするのでしょうか? よろしくお願いします。

  • oracle9iでの表領域名変更について

    Oracle9iでの表領域名の変更方法について教えていただけませんでしょうか。 通常のデータを格納している表領域です。(一時やsystemではありません) 宜しくお願いします。