共计 1098 个字符,预计需要花费 3 分钟才能阅读完成。
这篇文章主要介绍“怎么理解 sql 体系结构 shared pool”,在日常操作中,相信很多人在怎么理解 sql 体系结构 shared pool 问题上存在疑惑,丸趣 TV 小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么理解 sql 体系结构 shared pool”的疑惑有所帮助!接下来,请跟着丸趣 TV 小编一起来学习吧!
1. Shared pool 作用
(1)将 sql 语句解析成执行计划
(2)对执行计划进行执行,读取数据
(3)将读取到的数据返回给客户端
2. Shared pool 组成
① free 空间
② 库缓存,用于缓存 SQL 语句和执行计划
③ 字典缓存,存储数据库自己本身的信息,包括数据字典
3. 查询 shared pool 各部分大小
SQL select * from v$sgastat a where a.name=’library cache’;
SQL select * from v$sgastat a where a.pool = shared pool and a.name= free memory
SQL select * from v$sgastat a where a.name= row cache
4. 硬解析和软解析
在 shard pool 中,前台进程会将 SQL 语句解析成执行计划,这部分中解析方式有两种:硬解析和软解析。
(1)硬解析(hard parse): 当一条 SQL 语句进入共享池后,没有解析成执行计划的缓存,就需要进行硬解析。
(2)软解析(soft parse): 当一条 SQL 语句进入共享池后,共享池中有执行计划的缓存,就进行软解析。
SQL select name,value from v$sysstat where name like parse%
NAME VALUE
—————————————————————- ———-
parse time cpu 1479
parse time elapsed 2524
parse count (total) 60356
parse count (hard) 6524
parse count (failures) 16
parse count (describe) 50
在这个结果中,parse count (total) 代表从数据库启动之后,发生的全部解析数目。上述中当失败解析和硬解析量比较大,说明有问题了。
到此,关于“怎么理解 sql 体系结构 shared pool”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注丸趣 TV 网站,丸趣 TV 小编会继续努力为大家带来更多实用的文章!