Oracle管理者のための「時間術」
2009/3/6
Round2:ボトルネック調査対決
「業務アプリの反応が遅くなって仕事にならない!」
何の前触れもなく突然こんな電話がかかってきた(もしくはかけた)経験はないだろうか。DBA 1.0とDBA 2.0では電話を受けた後の対応がどう違うか見てみよう。
DBA 1.0の対応:「もう1回発生したら分かるかも」
問い合わせ元に現在の状況を確認すると、現在は問題ないらしい。
問い合わせ元は原因が分からず、再び業務アプリケーションが遅くなる可能性に頭を抱えながらもしぶしぶ了承するしかなかった。
DBA 2.0の対応:問題のクエリを即、究明
と連絡を受けた場合、DBA 2.0はEnterprise Manager Database Controlに接続してデータベースの状態を即座に確認する。
[パフォーマンス]タブを開くと直近の負荷がグラフ表示されている。22時45分から3分間くらい負荷が高くなっている部分があるので、そのあたりのトップアクティビティを調べてみる。
●手順2 トップアクティビティトップアクティビティは、指定した期間の範囲で時間がかかっているSQLなどを特定するために使用できる。どうやら該当時間帯は、scottユーザーのUPDATE文で時間がかかっているようだ。もし、業務アプリケーションの利用IDがscottユーザーなのであれば、このUPDATE文のところで遅くなっていたと思われる。
●手順3 トップアクティビティSQLIDをクリックするとそのSQL文がどのようなことで時間を使っているかが分かる。今回のケースでは「row lock contention」つまり同じレコードを更新しようとしてロック解除待ちになって時間がかかっているということになる。
タネを明かせば、いろいろなSQL文を投入したが思ったように負荷が上がってくれなかったため、意図的に複数の端末から同一レコード更新を起こし、なおかつ先に更新した方のトランザクションのCommitを行わず、同一レコードのロック解除待ちを意図的に落としてアクティビティを上げた。その状況を数回のクリックで見事特定できたことになる。
最後に:少ない作業コストで状態把握を
Enterprise Manager Database Controlは、内部的にSQL文を駆使してGUIに表示する情報を取得し、GUIでの操作も内部的にはコマンドとスクリプトとして実行している。しかし、そこまでGUIを回避しコマンドラインにこだわる利点を見いだすことは難しい。GUIにより統合的に全体を見渡し、少ない作業コストでさまざまな切り口でOracle Databaseの状態を把握できるEnterprise Manager Database Control のGUIの利便性はそれくらい特筆ものだからだ。
4/4 |
Index | |
Oracle管理者のための「時間術」 | |
Page 1 ・かつてOracleメンテナンス担当は三重苦だった!? 9iまでの「職人芸」とそれ以降 ・Round0:障害対応対決〜両者のスペック DBA 1.0のシステム構成 DBA 2.0のシステム構成 |
|
Page 2 ・Round1:障害対応対決 DBA 1.0の障害対応:達人クラスで作業時間5分 |
|
Page 3 DBA 2.0の障害対応:誰がやっても4分以内! |
|
Page 4 ・Round2:ボトルネック調査対決 DBA 1.0の対応:「もう1回発生したら分かるかも」 DBA 2.0の対応:問題のクエリを即、究明 ・最後に:少ない作業コストで状態把握を |
Databaseフォーラム全記事インデックス |
- Oracleライセンス「SE2」検証 CPUスレッド数制限はどんな仕組みで制御されるのか (2017/7/26)
データベース管理システムの運用でトラブルが発生したらどうするか。DBサポートスペシャリストが現場目線の解決Tipsをお届けします。今回は、Oracle SE2の「CPUスレッド数制限」がどんな仕組みで行われるのかを検証します - ドメイン参加後、SQL Serverが起動しなくなった (2017/7/24)
本連載では、「SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は、「ドメイン参加後にSQL Serverが起動しなくなった場合の対処方法」を解説します - さらに高度なSQL実行計画の取得」のために理解しておくべきこと (2017/7/21)
日本オラクルのデータベーススペシャリストが「DBAがすぐ実践できる即効テクニック」を紹介する本連載。今回は「より高度なSQL実行計画を取得するために、理解しておいてほしいこと」を解説します - データベースセキュリティが「各種ガイドライン」に記載され始めている事実 (2017/7/20)
本連載では、「データベースセキュリティに必要な対策」を学び、DBMSでの「具体的な実装方法」や「Tips」などを紹介していきます。今回は、「各種ガイドラインが示すコンプライアンス要件に、データベースのセキュリティはどのように記載されているのか」を解説します
|
|