zoukankan      html  css  js  c++  java
  • Oracle SQL Parsing Flow Diagram(SQL 解析流程图)

           在MOS 上有一篇介绍SQL 解析流程图的文档,参考[ID32895.1]。 截取主要部分内容如下:

                   Thisarticle show the parsing mechanism as a flow diagram. Its main purpose is toshow the difference between a 'soft' and a 'hard' parse. It is intended to givea feel of how parsing operates to make explanation of parsing activity easier.

     

     

     

     

    注意事项:

    1. A cursor is an address on the client that points tothe memory location of a SQL statement on the server. Multiple-client cursors may point at the same address on the server.

     

    2. Remember that 'Client' and'Server' sides may reside on the same machine - in which caseClient/Server is a logical distinction.

     

    3. If a cursor is open, then thestatement will be in the sql_area, so no parsing is necessary. This iswhy locks may remain when a client is terminated abnormally (such as a PCClient being turned off without closing open cursors).

     

    4. SESSION_CACHED_CURSORS is the initialisation parameterthat specifies how many cursors to hold open for a particular session. The opencursor request will still be sent to the server but it will not be executedonce a matching cursor is found in the session cursor cache.

     

    5. HOLD_CURSOR is an precompiler parameter that specifiesthat an individual cursor should be held open.

     

    6. Both the soft and hard parseregister as a parse in tkprof. Hashing the current statement updates theparse count.

     

     

    7. Soft parse avoids many of thesteps taken during the parse phase for a particular statement. Initialsyntactic and semantic checks are made and then the statement is hashed andcompared with hashed statements in the SQL area. If amatch is found, then existing information is used and relatively expensivesteps (such as query optimization etc.) areavoided.

     

    8. The 10053 event is only invoked during a hard parse.

     

    Oracle 10053 事件

    http://blog.csdn.net/tianlesoftware/article/details/5859027

    -------------------------------------------------------------------------------------------------------

    Blog: http://blog.csdn.net/tianlesoftware

    Email: dvd.dba@gmail.com

    DBA1 群:62697716(满);   DBA2 群:62697977(满)  DBA3 群:62697850(满) 

    DBA 超级群:63306533(满);  DBA4 群: 83829929  DBA5群: 142216823   

    DBA6 群:158654907  聊天 群:40132017   聊天2群:69087192

    --加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

  • 相关阅读:
    深度优先搜索和广度优先搜索的比较与分析
    BFS() DFS() 模板
    jQuery EasyUI1.2.4发布了
    深入理解dispatcher和redirect的区别
    分享一份jquery easyui的培训文档
    生活中的十悟
    CSS Hack的基本原理
    推荐11款jQuery开发的复选框和单选框美化插件
    NodeJS初探之三——新星的力量
    由浅到深的分析Javascript OO之写类方式之一:构造函数
  • 原文地址:https://www.cnblogs.com/tianlesoftware/p/3609634.html
Copyright © 2011-2022 走看看