- 締切済み
.dbfファイルの急増
質問があります。 webサイトの運用をしている会社に勤務しています。 管理しているサイトのDBに使っているoracleで、つい一昨日あたりから急に、archiveの下の.dbfファイルが1時間に数回、それも100M単位のものが作成されてしまうという現象に見舞われています。一晩でdiskfullになってしまいます。設計者が離職してしまい、誰も対処できなく困っています。なにかお知恵があればご教授ください。お願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- guchi32
- ベストアンサー率100% (10/10)
KROWN文書45780(Oracleの公式サポートページ)にありましたが、SELECT FOR UPDATEを使用している場合に「意図しないREDOログが大量に出ることがある」との記載がありました。 契約顧客専用の情報ですので、原文すべてを公開することは差し控えたいと思いますが、 SELECT FOR UPDATE文でロックをかける対象となる行をwhere句の適切な指定で減らすことができる」との解決方法が記載されていました。 その他にも「ハッシュクラスタ」を作成することで大量のREDOログが発生するとの現象が公開されていました。
- taka_tetsu
- ベストアンサー率65% (1020/1553)
アーカイブREODが大量に出力サルということは、 誰かor何かが大量のデータを追加・更新・削除を行っているようです。 これの原因を突き止めてください。
- guchi32
- ベストアンサー率100% (10/10)
.dbfファイルはデータベースファイルでしょうか。それともアーカイブファイルでしょうか。 ※データベースファイル:データ格納ファイル アーカイブファイル :更新履歴ログファイル その他、OSやOracleバージョン、アプリケーションサーバのありなしなど環境の詳細とご自身のOracleに関するレベルを書いていただいた方が良いですよ。 また、ファイルが作成されたタイミングでアラートログ(デフォルトでは$ORACLE_BASE/admin/[SID]/bdumpに作成されます)にアクションが記載されますので、そちらも記載していただけると手掛かりが掴めるかもしれません。 アーカイブファイルかどうかはv$parameterの ・log_archive_dest ・log_archive_format からも判断できます。 データベースファイルであれば、自動的に拡張されることはありますが、自動的に追加されることはありません。悪意を持つ人が行っているか、定期バッチ処理で稼動タイミングを誤ったかが考えられます。 アーカイブファイルであれば、アクセス量が異常に増えていることになりますので、クラッキングされている恐れがあります。v$session,v$processなどで、指定アプリケーションから以外の接続がないかを確認する必要があります。
補足
guchi32さん、taka_tetsuさん、早速の回答ありがとうございます。 小生のレベルはLevel1スライム程度です。 社内で協力してもらって調べた途中経過です。 ●OSはRedhatLinux7.3、DB専用サーバとして動いています。このサーバは現在4つのサイトのDBとなっていますが、今回の異常はそのうちの一つのみでした。Webサーバ(RedhatAS2.1、Apache、Tomcat)とはF/Wを通してローカル接続されています。何も不正アクセスは検知していません。 ●.dbfファイルはアーカイブファイルでした。 ●アラートログは以下のとおりです。 Wed Mar 16 01:29:53 2005 Thread 1 advanced to log sequence 493 Current log# 1 seq# 493 mem# 0: /home/oradata/****/redo01.log Wed Mar 16 01:29:53 2005 ARC1: Evaluating archive log 2 thread 1 sequence 492 ARC1: Beginning to archive log 2 thread 1 sequence 492 Creating archive destination LOG_ARCHIVE_DEST_1: '/home/oradata/****/archive/1_492.dbf' Wed Mar 16 01:30:11 2005 ARC1: Completed archiving log 2 thread 1 sequence 492 Wed Mar 16 01:35:35 2005 Thread 1 advanced to log sequence 494 Current log# 3 seq# 494 mem# 0: /home/oradata/****/redo03.log Wed Mar 16 01:35:35 2005 ARC0: Evaluating archive log 1 thread 1 sequence 493 ARC0: Beginning to archive log 1 thread 1 sequence 493 Creating archive destination LOG_ARCHIVE_DEST_1: '/home/oradata/****/archive/1_493.dbf' Wed Mar 16 01:35:49 2005 ARC0: Completed archiving log 1 thread 1 sequence 493 Wed Mar 16 01:43:53 2005 Thread 1 advanced to log sequence 495 Current log# 2 seq# 495 mem# 0: /home/oradata/****/redo02.log Wed Mar 16 01:43:53 2005 ARC1: Evaluating archive log 3 thread 1 sequence 494 ARC1: Beginning to archive log 3 thread 1 sequence 494 Creating archive destination LOG_ARCHIVE_DEST_1: '/home/oradata/****/archive/1_494.dbf' すいませんズラズラと・・・ 今のところここまでしかわかりませんが、宜しくお願いします。