zoukankan      html  css  js  c++  java
  • [ORALCE]SQL 优化案例之 10046事件,查看硬解析

    1.开启10046事件

    drop table TX1 purge;
    create table TX1 (x int);
    set linesize 266
    set pagesize 5000
    alter system flush shared_pool;
    alter system flush buffer_cache;
    alter session set events '10046 trace name context forever,level 12';

    2.批量硬解析操作

    begin
        for i in 1..100000
        loop 
            execute immediate
            'insert into TX1 values ('||i||')';
        end loop;
        commit;
    end;
    /

    3.关闭10046事件

    alter session set events '10046 trace name context off';

    4.查看生成trace 文件

    SQL> select tracefile from v$process where addr in (select paddr from v$session where sid in (select sid from v$mystat));
    
    TRACEFILE
    --------------------------------------------------------------------------------
    /oracle/D4C/diag/rdbms/d4cdb/D4C/trace/D4C_ora_10115.trc

    5.通过tkpro 生成文件

    [oracle@d4cdb trace]$ tkprof D4C_ora_10115.trc hardparasenosys.txt aggregate=yes sys=no waits=yes sort=fchela
    
    TKPROF: Release 19.0.0.0.0 - Development on Fri May 8 21:30:54 2020
    
    Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.
    
    [oracle@d4cdb trace]$ ls -ltr hardparasenosys.txt 
    -rw-r--r-- 1 oracle oinstall 3893 May  8 21:37 hardparasenosys.txt

    6.查看tkpro 生成文件,可以看到由于没有绑定变量产生了很多PARSE.

  • 相关阅读:
    JavaScript 变量类型 保存内存中的位置 和 引用
    https连接过程
    微信消息自动回复 json版
    RabbitMQ安装
    nginx反向代理
    小程序接口记录
    nginx同服务器不同目录的差别配置
    nginx URL隐藏index.php
    Laravel 打印SQL语句
    laravel PostTooLargeException
  • 原文地址:https://www.cnblogs.com/tingxin/p/12853562.html
Copyright © 2011-2022 走看看