表空间数据文件创建大小与实际使用大小以及rman备份集的关系系列一
结论1,rman产生的备份集不会是创建数据库的分配大小,而是实际使用的大小 比如为表空间分配了1G,但实际使用了50M,产生的RMAN备份集则为50M左右2,表空间的分配大小与实际使用大小不一样,请参考dba_data_files与dba_free_space测试SQL> select * from v$version where rownum=1;BANNER----------...
20151218入职新公司--加油
新的开端,加油
基于row cache object latch研究对于sga抖动的影响
结论1,row cache object latch共计50个child latch2,这50个child latch个数基本等同于v$rowcache的不同cache#个数,当然二者值相差为1,大致是可以匹配,当然,具体为何差1,还要继续思考与测试3,发现重定义共享池大小操作,要获取具体哪些row cache object latch,可见是1,5,8,32,46,47 child latch4,引申下3,可见...
进一步理解oracle11g之v$sga_resize_ops
结论1,v$sga_resize_ops记录已完成的近期850次SGA组件重定义大小的操作,注意是已经完成 与之对应的是v$sga_current_resize_ops它仅记录当前正在操作中的SGA组件重定义操作,注意是正在操作中的2,由此引申出,ORACLE任何知识皆有正反性,对应即有对应的知识点,所以考虑问题要从自反和辩证方面分析,才会更进一...
用oradebug short_stack及strace -p分析oracle进程是否dead或出现故障
结论1,可以采用oradebug或者strace -p跟踪后台或前台进程是否dead或hang住2,如果进程出现故障,必会在对应的TRC文件写入最新信息,基于此可以获取非常重要的信息进一步分析与诊断 日志文件在background_dump_dest3,采用 ll -lhrt *lgwr*|tail -10f 获取最新的进程的TRC文件4,而且出现故障时,多...
set autot traceonly与explain plan for的一点小区别
结论1,set autot traceonly查看测试SQL的执行计划,会真正去执行对应的测试SQL,并且会产生explan plan set statement_id的取测试SQL的SQL2,explan plan for也可以查看测试SQL的执行计划,但它不会真正去执行对应的测试sql3,我分析得出上述结论的依据是查看v$sql4,set autot traceonly如果运行多次测试sql,会生成多...
尝试采用一问一答方式及时回复oracle初学者以及进阶者的问题
如果你认可我的这种方式,并且是oracle初学者,欢迎提出在学习以及工作中碰到的oracle问题,我会尽量及时给以回复(资深以及高级dba请无视之) 我的邮箱:zhaixunyang1@sina.com 或者 直接论坛...
帮网友现场解决11204 data guard备库大量报PMON failed to acquire latch
使用alter session set current_schema=scott用explain plan for查看scott用户的sql
某Q友问题 explain没有思路,除了切换到sql的用户下面 我知道用户也不知道密码 这也切不过去啊结论1,学会查看官方手册,前提就是要多看多思考,其码熟悉官方手册的知识结构构成,方可针对性查阅资料2, alter session set current_schema可以切换到对应指定的用户,...
由某公司案例进一步掌握rman备份与恢复backup restore recovery系列一
结论1,数据库测试环境为10.2.0.52,dba_segments可以反映数据库实时大小的变化3, v$rman_output记录RMAN客户端连接到数据库形成的数据库会话,经测发现RMAN客户端连接会形成2个会话,在备份会增加到3个会话4,官方说,RMAN的备份不能跨操作系统平台,但可以跨数据库版本,可见RMAN备份也不能万能的,如果跨平台恢复...
sql version count引发cursor:pin s wait x及library cache latch library cache lock
背景 某Q友在其生产系统AWR发现library cache latch及library cache lock及cursor:pin s wait x等待事件非常严重,经排查发生某些底层SQL的多版本现象非常严重,最高达到4000多左右结论 1,oracle为了控制某个SQL的子游标个数不止过高过多,采用绑定变量分级机制,即绑定变量的长度(字节)在...
基于oradebug poke分析不同redo相关latch获取的先后次序
结论1,测试环境10.2.0.52,可见写redo时,先要获取redo copy latch,然后才是redo writing latch3,如果是REDO相关的3个LATCH,先是获取redo copy latch,接着才是redo allocation latch 最后是redo writing latch,4, 上述3个redo latch到底是在server process---->log buffer--->redo log file,哪个阶段获取,将在下...
提升自己oracle分析能力一些思考及方法论
cbc latch或cache buffer chains latch系列一
结论1,测试环境为oracle 10.2.0.52,cbc latch的子LATCH个数共计8192,其值可由参数_db_block_hash_latches控制3,_db_block_hash_latches参数指定的值并非完全等于手工指值,还与其它因素有关,可能是BUFFER CACHE大小以及粒度大小4,_db_block_hash_buckets参数控制共计多少个管理BUFFER CACHE的HASH BUCKET个数,...
oracle之time zone时区timestamp with time zone相关的概念之一
结论1,数据库测试环境为10.2.0.52, dba_tab_cols可以获取所有数据类型的信息,共计383种数据类型3,timestamp with time zone默认值6个粒度,可取范围为0-94,与此相关的参数为dbtimezone,sessiontimezone5, v$timezone_names存储时间区信息,共计392个时区6, 可以在创建数据库时create database以set time_zone...
q友问题之删除外加双引号表一点小想法--dump--ascii--to_number
q友问题请教个问题我怎么删除dsg用户下的表名为 segm.tawces的表(我登不了dsg用户)只能在sys用户下删除drop table dsg. segm.tawces purge 报错我是不是直接escape转义即可结论1,正常创建表和在表名字符加双引号,创建不同,2,不同之处于 A,不正常创建只能创建一种双引号括起来的字符,要...
使用_smu_debug_mode了解undo tablespace
背景 为了进一步研究undo segment header block中的事务SLOT重用机制,需要多个不同会话使用相同的undo segment header block,本文应时而生。结论1,oracle隐含参数相当牛比,我认为分析及加深对于它的理解有几个维度 a,查询与某个关键字匹配的隐含参数,进行测试总结 b,...
深入分析ora-600 2662错误系列一
结论1,本文主要分析ora-600错误从报错分为数字和函数2,本文主要分析ora-600的数字报错3,像ora-600错误大家我特定的操作有关,涉及的ORACLE机制比较复杂,具体说可能和REDO,UNDO等等有关,首先要确认到底是哪块有问题了,这样解决问题才有针对性4,由3就引申出来,一定要全方位查阅MOS文章,获取ORA-600方面的分析文...
用bbed查看数据文件的数据块block 0及block 1
结论1,测试环境为10.2.0.5数据库2,数据文件的block 0是操作系统的头块,用于存储操作系统的信息,bbed查看不了3,数据文件的block 1是数据文件的头块,不过我理解这个块开始存储的是ORACLE自己的数据结构,而块0是存储操作系统的一些信息 bbed可以查看4,关于这2个块的知识,还要研究测试BBED>set ...
由oradebug poke推进scn理解scn base及scn wrap系列一
背景 在v$transaction会看到scn,其中又分为scn base及scn wrap,这到底怎么回事呢?而且很多ORA报错与SCN有关,如果多了解一些SCN相关的知识,也便于我们分析解决问题。 结论1,oradebug poke可以推进SCN,分为在数据库OPEN及MOUNT皆可以oradebug setmypidoradebug DUMPvar SGA kcsg...