[20180619]oradebug peek.txt
[20180619]oradebug peek.txt
--//我以前一直以为oradebug peek查看某个地址开始的内容,后面的长度有限制的.
--//在linux下,我的测试是60.实际上oradebug peek还支持1个参数,将看到的信息写入跟踪文件.
--//通过测试说明问题.
1.环境:
SCOTT@book> @ver1
PORT_STRING VERSION BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx 11.2.0.4.0 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
SCOTT@book> select rowid,dept.* from dept;
ROWID DEPTNO DNAME LOC
------------------ ---------- -------------- -------------
AAAVRCAAEAAAACHAAA 10 ACCOUNTING NEW YORK
AAAVRCAAEAAAACHAAB 20 RESEARCH DALLAS
AAAVRCAAEAAAACHAAC 30 SALES CHICAGO
AAAVRCAAEAAAACHAAD 40 OPERATIONS BOSTON
SCOTT@book> @rowid AAAVRCAAEAAAACHAAA
OBJECT FILE BLOCK ROW ROWID_DBA DBA TEXT
---------- ---------- ---------- ---------- -------------------- -------------------- ----------------------------------------
87106 4 135 0 0x1000087 4,135 alter system dump datafile 4 block 135 ;
SYS@book> @ bh 4 135
HLADDR DBARFIL DBABLK CLASS CLASS_TYPE STATE TCH CR_SCN_BAS CR_SCN_WRP CR_UBA_FIL CR_UBA_BLK CR_UBA_SEQ BA OBJECT_NAME
---------------- ---------- ---------- ---------- ------------------ ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------------- --------------------
0000000084443EA0 4 135 1 data block xcur 1 0 0 0 0 0 0000000077136000 DEPT
--//BA=0000000077136000
2.使用oradebug观察
SYS@book> oradebug setmypid
Statement processed.
SYS@book> oradebug peek 0x77136000 64
[077136000, 077136040) = 0000A206 01000087 000E0EF0 06010000 0000E273 00160001 00015442 000E0EE4 1FE80000 00321F02 01000080 00020009 00000364 00C167B0 ...
SYS@book> oradebug peek 0x77136000 60
[077136000, 07713603C) = 0000A206 01000087 000E0EF0 06010000 0000E273 00160001 00015442 000E0EE4 1FE80000 00321F02 01000080 00020009 00000364 00C167B0 002E009A
--//可以发现显示60个字节.实际上最后加一个参数可以将内容写入跟踪文件,
SYS@book> oradebug peek 0x77136000 8192 1
[077136000, 077138000) = 0000A206 01000087 000E0EF0 06010000 0000E273 00160001 00015442 000E0EE4 1FE80000 00321F02 01000080 00020009 00000364 00C167B0 ...
SYS@book> oradebug tracefile_name
/u01/app/oracle/diag/rdbms/book/book/trace/book_ora_9822.trc
--//检查跟踪文件内容:
*** 2018-06-22 08:49:41.349
Processing Oradebug command 'peek 0x77136000 8192 1'
[077136000, 077138000) = 0000A206 01000087 000E0EF0 06010000 0000E273 ...
Dump of memory from 0x077136014 to 0x077138000
077136010 00160001 00015442 000E0EE4 [....BT......]
077136020 1FE80000 00321F02 01000080 00020009 [......2.........]
077136030 00000364 00C167B0 002E009A 00002004 [d....g....... ..]
077136040 000E0EF0 00000000 00000000 00000000 [................]
077136050 00000000 00000000 00000000 00000000 [................]
077136060 00000000 00040100 001AFFFF 1F221F3C [............<.".]
077136070 00001F22 1F7E0004 1F541F68 18891F3C [".....~.h.T.<...]
077136080 17D1182D 172B177E 168516D8 15DF1632 [-...~.+.....2...]
077136090 1537158B 147F14DB 13C71423 13211374 [..7.....#...t.!.]
0771360A0 126912C5 11B1120D 10F91155 1041109D [..i.....U.....A.]
0771360B0 0F890FE5 0EE10F35 0E290E85 0D730DCE [....5.....)...s.]
0771360C0 0CBB0D17 0C0D0C64 0B670BBA 0AC10B14 [....d.....g.....]
0771360D0 0A1B0A6E 097509C8 08BF091A 0816086B [n.....u.....k...]
0771360E0 076007BB 06BC070E 0618066A 057205C5 [..`.....j.....r.]
0771360F0 04BA0516 04100465 00040002 00000012 [....e...........]
077136100 00000012 00000000 00000000 441A010B [...............D]
077136110 012B0000 00000D02 00000000 00C0820E [..+.............]
077136120 00400024 0040BBB4 004000F0 010512FF [$.@...@...@.....]
....
077137FA0 0203012C 4F0A29C1 41524550 4E4F4954 [,....).OPERATION]
077137FB0 4F420653 4E4F5453 0203012C 53051FC1 [S.BOSTON,......S]
077137FC0 53454C41 49484307 4F474143 0203012C [ALES.CHICAGO,...]
077137FD0 520815C1 41455345 06484352 4C4C4144 [...RESEARCH.DALL]
077137FE0 012C5341 0BC10203 4343410A 544E554F [AS,......ACCOUNT]
077137FF0 08474E49 2057454E 4B524F59 0EF00601 [ING.NEW YORK....]
*** 2018-06-22 08:49:41.356
Oradebug command 'peek 0x77136000 8192 1' console output:
[077136000, 077138000) = 0000A206 01000087 000E0EF0 06010000 0000E273 00160001 00015442 000E0EE4 1FE80000 00321F02 01000080 00020009 00000364 00C167B0 ...
--//缺点虽然现在显示偏移16字节(当然前面有显示前16字节.但是剩下的单独转储.
--//这个可以作为转储内存块的信息.
[20180619]oradebug peek.txt的更多相关文章
- [20180625]oradebug peek 2.txt
[20180625]oradebug peek 2.txt --//上个星期演示了oradebug peek查看内存数据块的情况,oradebug peek {address} length 1,最后 ...
- [20190423]oradebug peek测试脚本.txt
[20190423]oradebug peek测试脚本.txt --//工作测试需要写一个oradebug peek测试脚本,不断看某个区域内存地址的值. 1.环境: SCOTT@book> @ ...
- [20190402]关于semtimedop函数调用2.txt
[20190402]关于semtimedop函数调用2.txt --//前几天做了sql语句在mutexes上的探究.今天看看_mutex_wait_time设置很大的情况下是否semtimedop会 ...
- [20190423]简单测试latch nowilling等待模式.txt
[20190423]简单测试latch nowilling等待模式.txt --//我对这个问题的理解就是如果参数willing=0,表示无法获取该latch,直接退出,再寻找类似的latch.--/ ...
- [20190416]查看shared latch gets的变化.txt
[20190416]查看shared latch gets的变化.txt 1.环境:SYS@book> @ ver1PORT_STRING VERSION ...
- [20190416]exclusive latch测试脚本.txt
[20190416]exclusive latch测试脚本.txt --//昨天做了shared latch的测试脚本,今天完善exclusive latch测试脚本,上个星期的测试我是手工执行的.- ...
- [20190416]完善shared latch测试脚本2.txt
[20190416]完善shared latch测试脚本2.txt --//昨天测试shared latch,链接:http://blog.itpub.net/267265/viewspace-264 ...
- [20190415]关于shared latch(共享栓锁).txt
[20190415]关于shared latch(共享栓锁).txt http://andreynikolaev.wordpress.com/2010/11/17/shared-latch-behav ...
- [20190402]Library Cache mutex.txt
[20190402]Library Cache mutex.txt 1.环境:SCOTT@book> @ ver1PORT_STRING VERSION ...
随机推荐
- $.parseJson()定义和用法
$.parseJSON() 函数用于将符合标准格式的的JSON字符串转为与之对应的JavaScript对象. 例子: 这里首先给出JSON字符串集,字符串集如下: var data=" { ...
- [EXP]Jenkins 2.150.2 - Remote Command Execution (Metasploit)
## # This module requires Metasploit: https://metasploit.com/download # Current source: https://gith ...
- 如何开始DDD(续)
上一篇针对用户注册案例简单介绍了如何使用 DDD,接下来我将继续针对这个例子做一下补充.先将User模型丰富起来,因为目前看上去他和贫血模型还没有啥大的区别. 首先还是由领域专家来说明业务,他提出了用 ...
- Fork/Join框架
java 5开始引入了Executor和ExecutorService接口以及实现这两个接口的类之后,使得java在并发支持上得到了进一步的提升.执行器框架(Executor Framework)将任 ...
- 第三章:Activity的生命周期
一:Activity的生命周期方法 Android提供了很多Activity的生命周期方法,比如我们常用的onCreate.onPause.onResume等.这里主要介绍粗粒度的周期方法,诸如onP ...
- NAT转换、VLAN与Trunk(特典:ACL初步)
一.NAT(网络地址转换) 即公有地址转换为私有地址 私有地址段(非公网地址,即公网不识别) A 10.0.0.0 10.255.255.255 B 17 ...
- ArcGIS紧凑型切片读取与应用1-解析(附源码)
1.前言 ArcGIS 发布的切片服务分为紧凑型切片和传统的分散型切片以及最新ArcGIS por新增的矢量切片.传统的分散型切片面临的问题是文件个数太多,部署拷贝过程十分的耗时,紧凑型切片是对分散型 ...
- Python和Java编程题(三)
1.题目:判断101到200之间有多少个素数,并输出所有素数 题目分析:判断一个数是否为素数,只需要判断这个数有没有除1和它自身外的其他因数.因此,判断这个数能否被2-它的平方根中的任意一个数整除即可 ...
- MVC架构介绍——自运行任务
实例产品基于asp.net mvc 5.0框架,源码下载地址:http://www.jinhusns.com/Products/Download 通过自运行任务来调度及执行程序中需要定时触发或处理的一 ...
- T-SQL:谓词和运算符(六)
谓词一般有 where和having,check 谓词只计算 TRUE ,FALSE或者UNKNOWN 逻辑表达式 如 AND 和OR 1.IN 谓词的用法 SELECT orderid, em ...