2012-05-01から1ヶ月間の記事一覧

統計情報の履歴

統計情報はデフォルトの設定で自動的に履歴が一定期間保存されている(たしかOracle10gくらいから) その履歴を使用すると統計情報を過去の状態に戻すことができる 現在の統計情報の履歴の保存期間を取得する SELECT DBMS_STATS.GET_STATS_HISTORY_RETENTION()…

デッドロックのタイムアウト

Oracleでデッドロックが発生した場合はDBMSがそれを検知した時点で例外を発生させる。 また、デッドロックまでの待ち時間を変更したるすることはないっぽい。 よく考えてみると2つのトランザクションが相互にロックし合っているためどちらかを終了しないと…

ORA-00060

ORA-00060: リソース待機の間にデッドロックが検出されました。デッドロックが発生したときのエラー。 調査方法は以下の通り。 1.初期化パラメータに指定された場所にトレースファイルが出力されるのでその場所を確認する(以下、出力先を確認するSQL) SELE…

LEADINGヒント

結合順序を指定するヒント。 ORDEREDヒントはFROM句に記述された順だが、このヒントでは結合順を指定することができる。 SELECT /*+ LEADING (tblB, tblA) */ tblA * FROM tbl_AA tblA tbl_BB tblB WHERE tblA.HOGECD = tblB.HOGECD(テーブル名に別名を使用…

ORDEREDヒント

結合順序を指定するヒント。 テーブルの結合順序と結合アルゴリズムを指定することができる。 以下、使用例 SELECT /*+ ORDERED */ tblA * FROM tbl_AA tblA tbl_BB tblB WHERE tblA.HOGECD = tblB.HOGECDORDEREDヒントを使うとFROM句に指定した順で表結合が…