通过案例学调优之--和 SHARED POOL 相关的主要 Latch
通过案例学调优之--和SHAREDPOOL相关的主要Latch3.1、和SHAREDPOOL相关的主要Latch有:Latch:sharedpoolLatch:librarycache我们知道Oracle通过SHAREDPOOL来实现SQ
的相关信息, 如:
, 也是通过将不同的
的相 关
Library Cache LatchLibrary Cache SHRAE POOL 。 接下来就开始进行硬解析过程,将执行解析后的执行计划等信息记录到 Library Cache ,一 直到硬解析结束。(硬解析)
的话,根据上面的逻辑那说明数 据库中存在大量的硬解析,这个时候就要查找那些
10:56:01 SCOTT@ prod >show parameter cursor NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ cursor_sharing string similar cursor_space_for_time boolean FALSE open_cursors integer 300 session_cached_cursors integer 50 1、session1:以scott建立测试表 11:44:26 SYS@ prod >conn scott/tiger Connected. 11:01:41 SCOTT@ prod >select * from v$mystat where rownum=1; SID STATISTIC# VALUE ---------- ---------- ---------- 1 0 0 10:56:09 SCOTT@ prod >create table test as select rownum as col1 ,rownum col2 from user_objects 10:58:38 2 ; Table created. 2、建立测试表直方图 10:58:51 SCOTT@ prod >exec dbms_stats.gather_table_stats(user,'TEST',method_opt=>'for columns col1 size 3'); PL/SQL procedure successfully completed. 10:59:36 SCOTT@ prod >select column_name,num_buckets,histogram from user_tab_col_statistics 11:00:43 2 where table_name='TEST'; COLUMN_NAME NUM_BUCKETS HISTOGRAM ------------------------------ ----------- --------------- COL1 3 HEIGHT BALANCED 11:01:35 sys@ prod >ALTER SYSTem flush shared_pool; System altered. 3、session 2:以scott建立另一个会话 11:03:44 SCOTT@ prod >select * from v$mystat where rownum=1; SID STATISTIC# VALUE ---------- ---------- ---------- 44 0 0 11:04:01 SCOTT@ prod >create table test1 as select rownum as col1 ,rownum col2 from user_objects; Table created. 11:04:36 SCOTT@ prod >exec dbms_stats.gather_table_stats(user,'TEST1',method_opt=>'for columns col1 size 3'); PL/SQL procedure successfully completed. 11:05:04 SCOTT@ prod >select column_name,num_buckets,histogram from user_tab_col_statistics 11:05:19 2 where table_name='TEST1'; COLUMN_NAME NUM_BUCKETS HISTOGRAM ------------------------------ ----------- --------------- COL1 3 HEIGHT BALANCED 11:05:30 sys@ prod >ALTER SYSTem flush shared_pool; System altered. 4、在session 1执行以下操作 11:02:42 SCOTT@ prod >begin 11:06:28 2 for i in 1..50000 loop 11:06:40 3 execute immediate 'select * from test where col1='||i; 11:07:08 4 end loop; 11:07:11 5 end; 11:07:13 6 / 在session 2执行同样地操作 11:07:57 SCOTT@ prod >begin 11:08:01 2 for i in 1..50000 loop 11:08:01 3 execute immediate 'select * from test1 where col1='||i; 11:08:01 4 end loop; 11:08:01 5 end; 11:08:02 6 / 5、查看session event 11:11:36 sys@ prod > select sid,event,p1,p1text,p2,p2text from v$session where sid in (1,44) SID EVENT P1 P1TEXT P2 P2TEXT ---------- ------------------------------ ---------- ------------------------------ ---------- ------------------------------ 1 latch: shared pool 537557404 address 293 number 44 latch: shared pool 537557404 address 293 number Elapsed: 00:00:00.00 11:11:38 sys@ prod >/ SID EVENT P1 P1TEXT P2 P2TEXT ---------- ------------------------------ ---------- ------------------------------ ---------- ------------------------------ 1 latch: shared pool 537557404 address 293 number 44 latch: row cache objects 828539960 address 270 number Elapsed: 00:00:00.00 11:11:39 sys@ prod >/ SID EVENT P1 P1TEXT P2 P2TEXT ---------- ------------------------------ ---------- ------------------------------ ---------- ------------------------------ 1 latch: shared pool 537557404 address 293 number 44 latch: shared pool 537557404 address 293 number Elapsed: 00:00:00.00 11:11:41 sys@ prod >/ SID EVENT P1 P1TEXT P2 P2TEXT ---------- ------------------------------ ---------- ------------------------------ ---------- ------------------------------ 1 latch: shared pool 537557404 address 293 number 44 latch: row cache objects 828007508 address 270 number Elapsed: 00:00:00.00 11:11:42 sys@ prod >/ SID EVENT P1 P1TEXT P2 P2TEXT ---------- ------------------------------ ---------- ------------------------------ ---------- ------------------------------ 1 latch: shared pool 537557404 address 293 number 44 latch: shared pool 537557404 address 293 number 11:12:32 sys@ prod >/ SID EVENT P1 P1TEXT P2 P2TEXT ---------- ------------------------------ ---------- ------------------------------ ---------- ------------------------------ 1 latch free 821793596 address 274 number 44 latch: shared pool 537557404 address 293 number sys@ prod >select sid,event,p1,p1text,p2,p2text from v$session where sid in (1,44) SID EVENT P1 P1TEXT P2 P2TEXT ---------- ------------------------------ ---------- ------------------------------ ---------- ------------------------------ 1 latch: shared pool 537557404 address 293 number 44 library cache: mutex X 1307903034 idn 65536 value 11:14:58 sys@ prod >select sid,event,p1,p1text,p2,p2text from v$session where sid in (1,44) SID EVENT P1 P1TEXT P2 P2TEXT ---------- ------------------------------ ---------- ------------------------------ ---------- ------------------------------ 1 library cache: mutex X 3413592168 idn 2883584 value 44 latch: row cache objects 828539960 address 270 number 11:15:18 sys@ prod >select sid,event,p1,p1text,p2,p2text from v$session where sid in (1,44) SID EVENT P1 P1TEXT P2 P2TEXT ---------- ------------------------------ ---------- ------------------------------ ---------- ------------------------------ 1 SQL*Net message from client 1650815232 driver id 1 #bytes 44 SQL*Net message from client 1650815232 driver id 1 #bytes 从上面的过程可以看到,大量的硬解析将导致严重的 library cache latch(mutex) 和 shared pool latch竞争。 6、查看Library cache中sql情况 sys@ prod >select * 2 from (select sql_id,child_number,child_latch,executions,sql_text 3 from v$sql 4 where sql_text like '%select * from test1 where col1%' 5 and sql_text not like '%v$sql%' 6 and sql_text not like '%begin%' 7 order by child_number desc) 8* where rownum select sql_id,hash_value,address,version_count from v$sqlarea where sql_id='6tsrjxza4gvur'; SQL_ID HASH_VALUE ADDRESS VERSION_COUNT ------------- ---------- -------- ------------- 6tsrjxza4gvur 3561484119 2E8CF368 3885
ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









一般的な Web 標準とその実際の適用事例を理解する 今日のデジタル時代において、World Wide Web は人々が情報を取得し、通信し、ビジネス活動を行うための重要なプラットフォームとなっています。 Web 標準は、Web ページがさまざまなブラウザ上で正常に表示され、安定して動作することを保証するための基礎です。この記事では、いくつかの一般的な Web 標準を紹介し、実際の適用事例を通じてその重要性を説明します。まず、HTML (Hypertext Markup Language) は Web 標準の最も基本的な部分であり、Web ページの構造とコンテンツを記述するために使用されます。 HTML はタグを使用して次のことを定義します。

システム再インストール時に環境テストに失敗し、書き換えが必要になる場合の解決方法:携帯電話が汚染されているため、ウイルス対策として Mobile Manager などのウイルス対策ソフトをインストールしてください 2. ジャンクが多いファイルは携帯電話内に保存されるため、携帯電話の実行メモリが占有されます。この問題を解決するには、電話機のキャッシュをクリアするだけです。3. 保存されたソフトウェアやファイルによって電話機のメモリが占有されすぎています。不要なファイルやソフトウェアを頻繁に削除しても問題ありません。ハードウェア構成がインストール要件を満たしている限り、次のことが可能です。新しいものを直接使用してください。システム ディスクからシステムを再インストールしてください。 USB フラッシュ ドライブまたはハードディスクを使用してインストールでき、非常に高速です。ただし、重要なのは、互換性の良いシステム ディスク (IDE、ACHI、および RAID モードでのインストールをサポート) を使用することであり、自動的かつ永続的にアクティブ化できることが検証されています。それで

Nginx サーバーは、非常に強力な拡張性を備えた高性能 Web サーバー ソフトウェアであり、ネイティブ モジュールとサードパーティ プラグインの統合をサポートしています。この記事では、Nginx サーバーのネイティブ モジュールとサードパーティ プラグインの統合と使用方法を詳細に紹介し、読者がそれらをよりよく理解して適用できるようにコード例を添付します。 1. Nginx ネイティブ モジュール Nginx のネイティブ モジュールとは、コア モジュール、HTTP モジュール、メール モジュールなど、Nginx によって正式に開発および保守されている機能モジュールを指します。 Nginxでの設定

忙しい生産ラインでは、ロボットアームが効率的に連携し、オペレーターはリモートのリアルタイム制御を通じてプロセス全体を簡単に制御できます。鉱山では、技術専門家が AR メガネを着用し、メガネにリアルタイムで表示される情報を使用して、数千マイル離れた技術チームと協力して機器の問題を迅速に解決します。園内では無人配送車が自由に往復しており、家から出ずに荷物を受け取ることができる。これらのシナリオは架空のものではなく、クアルコムが最近リリースした「2023 Qualcomm Empowering Enterprise Digital Transformation Case Collection」に掲載されている実際のケースです。クアルコムは、主要な開発方向と実装のハイライトに焦点を当て、4 年連続で「モノのインターネット」をリリースしています。 「応用事例集」では、業界の最新技術の方向性と革新的な生態協力モデルを多面的かつ立体的に展示します。今年の事例集は、中国企業によるクアルコム テクノロジーの利用に焦点を当てています。

今日のインターネット時代では、オンラインで答えを見つけたり、質問についてコミュニケーションしたりすることを好む人がますます増えています。その結果、さまざまなオンライン質疑応答コミュニティが誕生しました。これらのコミュニティは、ユーザーが質問したり、質問に答えたり、経験や知識を互いに交換したりできるプラットフォームを提供します。今回は、PHPをベースに開発したオンラインQ&Aコミュニティの制作過程をご紹介します。まず、オンライン Q&A コミュニティにどのような機能が必要かを明確にする必要があります。一般的に、ユーザー登録、ログイン、質問、返信などの側面を含める必要があります。

人気のサーバーサイド プログラミング言語として、PHP は豊富なオブジェクト指向プログラミング機能を提供します。オブジェクト指向プログラミング (OOP) は、複雑なシステムを複数の個別のオブジェクトに分割することで開発とメンテナンスを簡素化するプログラミング手法です。この記事では、PHP でのオブジェクト指向プログラミングの事例を紹介し、簡単な例を通じて PHP でのオブジェクト指向プログラミングの応用を示します。 1. オブジェクト指向プログラミングの概念 PHP では、オブジェクト指向

Ant New Village Daily Question 3.9: 今日の質問: 「ボードゲームデザイナー」って主に何をする仕事か知っていますか? 「ボードゲームデザイナー」の主な仕事内容を知らない人も多いのではないでしょうか? 次に、3.9 Ant New Village で毎日ユーザーに寄せられる質問への答えを編集者が共有します。興味のあるユーザーは、ぜひ見に来てください。アリ新村の今日の答え 最新更新 アリ新村の毎日の質問 3.9: 「ボードゲームデザイナー」って主にどんな仕事をしているか知っていますか?質問:「ボードゲームデザイナー」って主にどんな仕事をしているか知っていますか?答え: 卓上ゲームのデザイン コンテンツ分析: 1. 中国の卓上ゲームの専門家! Ta-Te Wu(1971 年 7 月 24 日 - )、国内の著名なボードゲーム デザイナー; 2. 中国のボードゲームの台頭と発展を目撃しました。ボードゲーム業界の人々は敬意を込めて彼をこう呼んでいます

HTML のブロック レベルの要素: HTML の主要なブロック レベルの要素を理解するには、特定のコード例が必要です。HTML (HyperTextMarkupLanguage) は、Web ページの構築に使用されるマークアップ言語です。さまざまな要素 (要素) で構成されており、その中にはブロックレベル要素 (ブロックレベル要素) Web ページのレイアウトにおいて重要な役割を果たします。この記事では、HTML の主要なブロック レベルの要素に焦点を当て、読者がそれらをより深く理解できるように、具体的なコード例を示します。
