怎样做付费下载的网站,如何做区块链网站,app设计策划书,选服务好的网站建设公司文章目录 oracle整体结构图共享池#xff08;shared pool#xff09;shared pool的作用shared pool的组成查询 shared pool 各组成部分大小硬解析和软解析 oracle整体结构图 共享池#xff08;shared pool#xff09;
shared pool的作用
1、 将 sql 语句解析成执行计划
… 文章目录 oracle整体结构图共享池shared poolshared pool的作用shared pool的组成查询 shared pool 各组成部分大小硬解析和软解析 oracle整体结构图 共享池shared pool
shared pool的作用
1、 将 sql 语句解析成执行计划
2、 对执行计划进行执行读取数据
3、 将读取到的数据返回给客户端
解析》执行》返回此处涉及到“解析”下文将详细分析和总结
shared pool的组成 ① free 空间
② 库缓存用于缓存 SQL 语句和执行计划比如最近执行过的sql语句、pl/sql过程和包
③ 字典缓存存储数据库自己本身的信息包括数据字典,比如表的定义口令表的结构用户名权限等信息尽可能多的熟悉数据字典才能更好的掌握oracle相关free、libaray cache、shared pool等相关大小情况都可以在v$sgastat 内存字典中进行查看方便数据库监控、管理以及后期通过修改参数来改变大小空间
查询 shared pool 各组成部分大小
1、select * from v$sgastat a where a.name ’ library cache ’ ;查看库缓存大小信息
2、select * from v$sgastat a where a.pool ‘shared pool’ and a.name‘free memory’;查看共享大小和空闲大小信息
3、select * from v$sgastat a where a.name‘row cache’;查看字典缓存大小
硬解析和软解析
在 shard pool 中前台进程会将 SQL 语句解析成执行计划这部分中解析方式有两种硬解析和软解析。
1、oracle执行sql的步骤过程
1.1、语法检查(syntax check) 检查此sql的拼写是否语法。 1.2、语义检查(semantic check) 诸如检查sql语句中的访问对象是否存在及该用户是否具备相应的权限。
1.3、对sql语句进行解析(prase) 利用内部算法对sql进行解析生成解析树(parse tree)及执行计划(execution plan)。 1.4、执行sql返回结果(execute and return)
根据sql处理过程确定软硬解析发生再1.3步骤过程中
硬解析过程
1.语法、语义及权限检查2.查询转换通过应用各种不同的转换技巧会生成语义上等同的新的SQL语句如count(1)会转为count(*)3.根据统计信息生成执行计划执行计划由很多种但是一定选择成本最低消耗资源最少最优的方案执行计划4.将游标信息执行计划保存到库缓存。软解析过程
1.语法、语义及权限检查2.将整条SQL 直接在库缓存中执行计划1、硬解析 hard parse : 当一条 SQL 语句进入共享池后没有解析成执行计划的缓存就需要进行硬解析—消耗资源大成本高速度慢
2、软解析 soft parse : 当一条 SQL 语句进入共享池后共享池中有执行计划的缓存就进行软解析—shared pool中获取缓存的sql如果没有的情况下则会发生硬解析过程
查看解析的相关信息 1、cpu解析时间 2、执行计划解析时间 3、解析总数硬解析总数软解析总数可以得到软解析总数 4、硬解析总数 5、解析失败总数