ASM中的X$表

ASM看起来像个黑盒子,因为我们从文档中得到的信息有限。实际上ASM Instance和Database Instance没有什么区别,Oracle只是修改了代码使得其专注于存储管理而已。所以一些研究Database Instance的方法在ASM中照样有效,比如sql trace10046事件等,这可以帮助我们认识到ASM内部的一些东西。


alter session set sql_trace=true;
select count(*) from v$asm_file;
alter session set sql_trace=false;

找到对应的trace file,可以发现有如下语句:

select inst_id,group_kffil,number_kffil,compound_kffil,incarn_kffil,
blksiz_kffil,blkcnt_kffil,filsiz_kffil,filspc_kffil,sftype_kffil,
decode(redun_kffil,17,’UNPROT’,18,’MIRROR’,19,’HIGH’,
35,’PARITY’,36,’PARITY’,37,’PARITY’,38,’PARITY’),
decode(bitand(fdflg_kffil, 2), 2, ‘FINE’, ‘COARSE’),
crdate_kffil,mddate_kffil,
decode(thinned_kffil, 0, ‘U’, 4294967295, ‘N’, ‘Y’)
from x$kffil
where incarn_kffil <> 0 and number_kffil > 255

Read more of this post

Oracle Database Internals Newsletter October 2007

oracle database internals newsletter

Oracle Global Customer Services的Internals Support Team主要负责为客户处理诸如Ora-600,Ora7445之类的内部错误以及block corruption等严重问题,现在他们开始制作Database Internals Newsletter来分享对于这类问题的处理经验,2007年10月份创刊号,不过是发布在metalink上的,需要有metalink帐号才能看了。

地址:Note 460494.1

号外:Oracle各版本最新patchset

SQL Server小工具:SQL Internals Viewer

SQL Internals Viewer可以用来查看SQL Server数据文件中各个对象实际的存储分布情况,正如它的名字显示的,这是一款内部工具,建议感兴趣的同学用来研究SQL Server的存储机制,千万不要在产品库上使用。

这里引用作者Danny Gould的说法:

SQL Internals Viewer is a tool for looking into the SQL Server storage engine and seeing how data is physically allocated, organised and stored.

All sorts of tasks performed by a DBA or developer can benefit greatly from knowledge of what the storage engine is doing and how it works. This tool has been designed to make database internals more accessible.

目前最新版本0.10beta,需要.net framework2.0,支持MS SQL Server 2005和MS SQL Server 2008 7月份社区预览版。该版本还有很多的限制:

  • 不支持LOB (Text/Image) (可能在接下来的0.11中提供支持)
  • 不支持UDT数据类型* No support for UDT data types
  • 不支持多个数据文件的数据库(可能要在1.0以后的版本才会提供支持了)

也许有一天,这个工具也能像d.c.b.aAUL(MYDUL)一样,能从数据文件中直接恢复出数据吧:)

点击这里下载SQL Internals Viewer访问官方网站

无觅相关文章插件,快速提升流量