プロが教える店舗&オフィスのセキュリティ対策術

オラクル クラサバ環境で動作が遅くなった。
お世話になります。環境は、
サーバー:2003SERVER、クライアント:XPPro、ORACLE:9i
サーバーはDBサーバとしてのみ使用。毎日、2時間ほど電源を切っています。
(自動で定時にシャットダウンして立ちあげている)
現在、クライアント3台にアプリケーションを入れて作業をしています。
2年ほどは機嫌よく動いていたのですが、2か月程前に作業が遅くなり
現状のデータをバックアップし、サーバーのDBをDROPして
バックアップデータをサーバーに再インストールしたところ作業速度も元の戻りました。
ところが数日前からまた、動作が遅くなり始めました。
原因として考えられることをご教授宜しくお願いします。
アプリケーション作業以外は、作業は普通にできます。
以上 宜しくお願いします。

A 回答 (4件)

>アプリケーション作業以外は、作業は普通にできます。


上記からOracleに問題があると思いますが。

このシステムは挿入、更新、削除などが比較的多いシステムでしょうか?
2か月程前にバックアップから戻したのはExportデータをImportしたということですか、
それともバックアップファイルをリストアしたという事でしょうか。

他の方も書かれているように、データベースにフラグメンテーションが起きている可能性が
高いですが、その他に統計情報が合わなくなっていて、Oracleのオプティマイザが作る
実行計画が合わない可能性などが考えられます。

1.挿入~削除が多い場合
  索引を作り直す(索引はdeleteやtruncateではメンテナンスされませんほっておくと
  ずーっと残るので、レンジスキャンなどの場合は遅くなります)
2.データの増加や更新などによる業移行や行連鎖、索引のブランチの増加
  表単位(あるいはユーザー、データベース単位)のフラグメンテーションの解消が必要
  Export→Drop table/create table→Import
3.実行計画が悪い場合、統計上を取得する(analyzeコマンド、DBMS_STATS等の実施)

Oracleをデータ量に合わせて適正に使うためには、定期的なメンテナンスと統計上の取得を
実施された方が良いと思います。

また、本格的にチューニングを実施するには、statspack等のユーティリティを使用し
待機イベント(Oracleの修理が中断した原因)を確認するなどが必要です。

参考URL:http://itnavi.com/totteORA/Tips21.asp
    • good
    • 1
この回答へのお礼

akkun-001様
お礼が遅くなり申し訳ありません。
アドバイス頂いた内容をチェックするのに時間がかかってしまいました。
結局、オラクルのDBの妥当性を考えてて再インストールすることになりました。
現在は、テーブルのDROP→オラクル停止→デフラグ→再起動→INPORTで若干速くなってるので
様子見状態です。
以上 ありがとうございました。

お礼日時:2010/07/20 16:34

統計情報が最新でないためデータのアクセス方法がデータの状態と合わない。


統計情報を最新にしてください。
    • good
    • 0
この回答へのお礼

SaKaKashi様
お礼が遅くなり申し訳ありません。
アドバイス頂いた内容をチェックするのに時間がかかってしまいました。
結局、オラクルのDBの妥当性を考えてて再インストールすることになりました。
現在は、テーブルのDROP→オラクル停止→デフラグ→再起動→INPORTで若干速くなってるので
様子見状態です。
以上 ありがとうございました。

お礼日時:2010/07/20 16:38

データが増えてくると、いろいろな問題がでてくることが多いですが、


当然、データベースの設計時に充分検討されていることとは思いますが。基本的なところで。
1)テーブルやインデックスCREATEの、パラメタ(初期サイズ、増分サイズ)は妥当ですか?
2)必要なインデックスが作成されていますか?(ちゃんと働いていますか?)
念のためご確認を。
    • good
    • 0
この回答へのお礼

noyuo様
ありがとうございます。
設計時の想定データ量と比べてデータ量は多くなっていると思われるので、
妥当性はチェックしてみます。
インデックスについては、ちゃんと動いてるかの確認はしたことはないので
確認方法を調べて確認してみます。
アドバイスありがとうございました。

お礼日時:2010/06/24 11:40

Dropの後に、リストアで元に戻るってことは、


断片化かな。

http://otndnld.oracle.co.jp/skillup/oracle9i/6_1 …

DB止めて、OSレベルでデフラグを実施してはどうでしょうか。
    • good
    • 0
この回答へのお礼

tommy1977様
早々のアドバイスありがとうございます。
サーバー側でハード的に何かトラブルが起こっているのかと思ったんですが、
断片化の可能性が高いですか。
以上 ありがとうございました。

お礼日時:2010/06/23 16:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す