[20170904]11Gr2 查詢游標為什麼不共用腳本.txt

来源:http://www.cnblogs.com/lfree/archive/2017/09/04/7472323.html
-Advertisement-
Play Games

[20170904]11Gr2 查詢游標為什麼不共用腳本.txt--//參考鏈接下麵的註解腳本:https://carlos-sierra.net/2017/09/01/poors-man-script-to-summarize-reasons-why-cursors-are-not-shared/ ...


[20170904]11Gr2 查詢游標為什麼不共用腳本.txt

--//參考鏈接下麵的註解腳本:
https://carlos-sierra.net/2017/09/01/poors-man-script-to-summarize-reasons-why-cursors-are-not-shared/

--//做一個記錄.

SCOTT@book> @ &r/ver1
PORT_STRING                    VERSION        BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx            11.2.0.4.0     Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

/* Formatted on 2017/9/4 9:54:31 (QP5 v5.252.13127.32867) */
  SELECT    'select reason_not_shared, count(*) cursors, count(distinct sql_id) sql_ids
from v$sql_shared_cursor
unpivot(val for reason_not_shared in(
'
         || LISTAGG
            (
                  '  '
               || LISTAGG (column_name, ',') WITHIN GROUP (ORDER BY column_id)
              ,',
'
            )
            WITHIN GROUP (ORDER BY line_no)
         || '
))
where val = ''Y''
group by reason_not_shared
order by 2 desc, 3, 1;'
            sql_text
    FROM (SELECT column_name
                ,column_id
                ,CEIL (ROW_NUMBER () OVER (ORDER BY column_id) / 4) line_no
            FROM dba_tab_columns
           WHERE     owner = 'SYS'
                 AND table_name = 'V_$SQL_SHARED_CURSOR'
                 AND data_length = 1)
GROUP BY line_no;

--//生成的腳本如下:
select reason_not_shared, count(*) cursors, count(distinct sql_id) sql_ids
from v$sql_shared_cursor
unpivot(val for reason_not_shared in(
  UNBOUND_CURSOR,SQL_TYPE_MISMATCH,OPTIMIZER_MISMATCH,OUTLINE_MISMATCH,
  STATS_ROW_MISMATCH,LITERAL_MISMATCH,FORCE_HARD_PARSE,EXPLAIN_PLAN_CURSOR,
  BUFFERED_DML_MISMATCH,PDML_ENV_MISMATCH,INST_DRTLD_MISMATCH,SLAVE_QC_MISMATCH,
  TYPECHECK_MISMATCH,AUTH_CHECK_MISMATCH,BIND_MISMATCH,DESCRIBE_MISMATCH,
  LANGUAGE_MISMATCH,TRANSLATION_MISMATCH,BIND_EQUIV_FAILURE,INSUFF_PRIVS,
  INSUFF_PRIVS_REM,REMOTE_TRANS_MISMATCH,LOGMINER_SESSION_MISMATCH,INCOMP_LTRL_MISMATCH,
  OVERLAP_TIME_MISMATCH,EDITION_MISMATCH,MV_QUERY_GEN_MISMATCH,USER_BIND_PEEK_MISMATCH,
  TYPCHK_DEP_MISMATCH,NO_TRIGGER_MISMATCH,FLASHBACK_CURSOR,ANYDATA_TRANSFORMATION,
  PDDL_ENV_MISMATCH,TOP_LEVEL_RPI_CURSOR,DIFFERENT_LONG_LENGTH,LOGICAL_STANDBY_APPLY,
  DIFF_CALL_DURN,BIND_UACS_DIFF,PLSQL_CMP_SWITCHS_DIFF,CURSOR_PARTS_MISMATCH,
  STB_OBJECT_MISMATCH,CROSSEDITION_TRIGGER_MISMATCH,PQ_SLAVE_MISMATCH,TOP_LEVEL_DDL_MISMATCH,
  MULTI_PX_MISMATCH,BIND_PEEKED_PQ_MISMATCH,MV_REWRITE_MISMATCH,ROLL_INVALID_MISMATCH,
  OPTIMIZER_MODE_MISMATCH,PX_MISMATCH,MV_STALEOBJ_MISMATCH,FLASHBACK_TABLE_MISMATCH,
  LITREP_COMP_MISMATCH,PLSQL_DEBUG,LOAD_OPTIMIZER_STATS,ACL_MISMATCH,
  FLASHBACK_ARCHIVE_MISMATCH,LOCK_USER_SCHEMA_FAILED,REMOTE_MAPPING_MISMATCH,LOAD_RUNTIME_HEAP_FAILED,
  HASH_MATCH_FAILED,PURGED_CURSOR,BIND_LENGTH_UPGRADEABLE,USE_FEEDBACK_STATS
))
where val = 'Y'
group by reason_not_shared
order by 2 desc, 3, 1;

--//輸出例子:
REASON_NOT_SHARED             CURSORS   SQL_IDS                               
--------------------------------------------------
LANGUAGE_MISMATCH             5928      3733                                  
USE_FEEDBACK_STATS            3923      3305                                  
BIND_LENGTH_UPGRADEABLE       1161      855                                   
BIND_MISMATCH                 376       352                                   
PURGED_CURSOR                 248       177                                   
BIND_EQUIV_FAILURE            207       150                                   
BIND_UACS_DIFF                120       120                                   
LOAD_OPTIMIZER_STATS          88        78                                    
USER_BIND_PEEK_MISMATCH       30        18                                    
OPTIMIZER_MISMATCH            26        13                                    
HASH_MATCH_FAILED             25        25                                    
AUTH_CHECK_MISMATCH           23        15                                    
OPTIMIZER_MODE_MISMATCH       18        14                                    
TRANSLATION_MISMATCH          16        11                                    
TOP_LEVEL_RPI_CURSOR          11        9                                     
INSUFF_PRIVS_REM              7         4                                     
INCOMP_LTRL_MISMATCH          4         4                                     
PLSQL_CMP_SWITCHS_DIFF        4         4                                     
INST_DRTLD_MISMATCH           3         3                                     
INSUFF_PRIVS                  2         2                                     
TOP_LEVEL_DDL_MISMATCH        2         2                                     
MULTI_PX_MISMATCH             1         1                                     
PQ_SLAVE_MISMATCH             1         1                                     
ROLL_INVALID_MISMATCH         1         1                                     


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 背景 最近一個客戶找到我說是所有的SQL Server 伺服器的記憶體都被用光了,然後截圖給我看了一臺伺服器的任務管理器。如圖 這裡要說明一下任務管理器不會完整的告訴真的記憶體或者CPU的使用情況,也就是說這裡只能得到非精確的信息,有可能就是一個假警報。 為了讓我的客戶放心,我檢查了伺服器並且查看了很多 ...
  • 前些天某個SQL Server資料庫的錯誤日誌爆出如下錯誤: 第一感覺是並行查詢的問題,於是翻筆記查看'ACCESS_METHODS_DATABASE_PARENT'到底是什麼LATCH,可以參考sys.dm_os_latch_stats的官網解釋來瞭解一二。 ACCESS_METHODS_DATA ...
  • #下載MySQL官方鏡像 docker pull mysql:5.7.18 #運行MySQL容器,指定root密碼、預設資料庫、操作員賬號密碼docker run --name mysql \ -d \ -p 3306:3306 \ -e MYSQL\_ROOT\_PASSWORD=rootpass... ...
  • 前些天在處理一個SQL Server LATCH導致的資料庫停止響應問題時,遇到了一些需要SQLOS調度知識解決的問題,正好以前看過一篇官網的文章,在這裡稍作修改貼出來。 原文網址如下: https://blogs.msdn.microsoft.com/apgcdsd/2011/11/23/sql- ...
  • PIVOT PIVOT運算符用於在列和行之間進行數據旋轉或透視轉換,同時執行聚合運算 ...
  • Oracle的substr函數簡單用法 ...
  • 修改資料庫配置文件:tnsnames.ora 【我的資料庫位置:D:\app\Icey-evil\product\11.2.0\dbhome_1\NETWORK\ADMIN】 根據伺服器地址加入以下內容: 說明:HOST = 10.88.250.28 是需要連接的oracle伺服器 IP,SERVI ...
  • Apply - 涉及以下兩個步驟中的一步或兩步(取決於Apply的類型): 1、A1:把右表表達式應用於左表的行 2、A2:添加外部行 Apply運算符把右表表達式應用於左輸入的每一行。右表達式可以引用左輸入中的列,對於左表中的每一行,都要計算一次右邊輸入的表達式。這一步會把... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...