1.执行顺序:客户端输入sql语句sql语句通过网络到达数据库实例server porcess接收SQL语句后 a、将sql语句解析成执行计划,然后才能执行 b、解析:消耗很多资源:CPU、IO,如在共享池中有缓存则不需要再次解析。 (共享池:缓存SQL语句以及SQL语句对应的执行计划) (...
分类:
数据库 时间:
2016-01-03 22:27:40
阅读次数:
217
??一、ORACLE 物理体系结构原理结构图各部分解释:PGA: 私有内存区,仅供当前发起用户使用。三个作用用户登录后的session信息会保存在PGA。运行排序。假设内存不够,oracle会在暂时表空间中完毕保存用户权限信息SGA: 包括共享池,数据缓冲区,日志缓冲区以及一些相关的进程。DATAB...
分类:
数据库 时间:
2015-12-21 17:58:48
阅读次数:
210
刚开始学习oracle,记录一下自己的学习笔记,如有错误,还望各位大牛多多指教。首先先上一张oracle体系结构中相对比较重要的图,如下当我们输入一条简单的命令时候,例如第一次输入updatetable_nametsett.a=30;当我们执行这一条sql的时候,我们这一条sql现在sharepool(共享池..
分类:
数据库 时间:
2015-12-08 07:25:26
阅读次数:
265
--查看诊断位置信息select*fromv$diag_info;--查看sga中内存分配信息select*fromsys.x$ksmfs;--查看内存块还剩余多少selectpool,name,bytes/1024/1024MBfromv$sgastatwherename=‘freememory‘;--查看共享池的使用情况比率selectto_number(v$parameter.value)value,v$sgastat.byt..
分类:
数据库 时间:
2015-12-07 00:47:09
阅读次数:
306
--共享池中保留区的信息查询select*fromv$shared_pool_reserved--查询hardparse比率selecta.valueasTotal,b.valueas"HardPase",round(b.value/a.value,2)asRatiofromv$sysstata,v$sysstatbwherea.name=‘parsecount(total)‘andb.name=‘parsecount(hard)‘;--查询哪些SQL语句没有..
分类:
数据库 时间:
2015-12-06 17:51:11
阅读次数:
263
如果Oracle的优化器产生了某种错误的执行计划,或者我们希望Oracle对于某个SQL重新进行分析,那么就需要这个SQL的执行计划在共享池中过期,而简单的方法在10.2.0.4以后才出现。对于以前的版本而言,最显而易见的方法莫过于直接刷新共享池,但是如果是数据库中绝大部分的SQL都存在问题,那么这...
分类:
数据库 时间:
2015-11-10 19:26:46
阅读次数:
262
还有一个参数是需要提及的:shared_pool_reserved_size。该参数指定了保留的共享池空间,用于满足将来的大的连续的共享池空间请求。当共享池出现过多碎片,请求大块空间会导致Oracle大范围的查找并释放共享池内存来满足请求,由此可能会带来较为严重的性能下降,设置合适的shared_p...
分类:
其他好文 时间:
2015-10-29 23:18:06
阅读次数:
265
1,内存结构优化概述1.1 缓冲区影响数据库运行性能的缓冲区包括可以共享的SGA和服务器进程私有的pga两大类,其中sga又包括共享池、大型池、java池、数据缓冲区、流池、redo log缓冲区。 1.2 自动内存管理oracle一般采用自动内存管理来管理系统内存,由oracle自动管理和调整数据库实例的内存大小。在自动管理模式下,首先对初始化参数MEMORY_TARGET(目标内存大小)和ME...
分类:
数据库 时间:
2015-09-18 22:00:20
阅读次数:
334
诊断并解决ORA-04031 错误 当我们在共享池中试图分配大片的连续内存失败的时候,Oracle首先清除池中当前没使用的所有对象,使空闲内存块合并。如果仍然没有足够大单个的大块内存满足请求,就会产生ORA-04031 错误。 当这个错误出现的时候你得到的错误解释信息类似如下: 04031...
分类:
其他好文 时间:
2015-09-18 18:12:42
阅读次数:
147
一、名词解释(1)SGA:SystemGlobalArea是OracleInstance的基本组成部分,在实例启动时分配;系统全局域SGA主要由三部分构成:共享池、数据缓冲区、日志缓冲区。(2)共享池:SharedPool用于缓存最近被执行的SQL语句和最近被使用的数据定义,主要包括:Library...
分类:
数据库 时间:
2015-09-12 12:15:28
阅读次数:
366