一、闩
latch:用于保存内存中(SGA)的共享内存结构的互斥机制。latch就像是内存上的锁,可以由一个进程非常快速地激活和释放。
用于防止对一个共享内存结构进行并行访问。
常见latch争用:没有使用绑定变量。
解决方法:增大shared pool或修改SQL。
LATCH分为两种类型:
1.willing - to - wait(愿意等待)
2.no - wait(不等待):比如redo-copy-latch(重做日志的复制latch)不等待,而是立即尝试获取latch
二、绑定变量
核心:就是用变量代替常量,使每次提交的SQL都是一样的,执行软解析。
其实那些的事情就是两个问题,被弄得复杂了
三、硬解析与软解析
a、语法检查
b、sql转换成hash值
c、拿hash值与共享池中的HASH比较,包括大小写、空格、注释、字符串
e、生成执行计划
f、返回结果
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26216631/viewspace-741418/
,如需转载,请注明出处,否则将追究法律责任。