一直都反对使用ASSM表空间, 因为空间浪费比较严重. 但也从没有认真比较过, 还是先测试一下再说话吧. SQL> select count(*) from t_assm; COUNT(*) ---------- 19 将这个表复制一份到非ASSM表空间中, 再分析计算一下统计信息后, 看表的大小. SQL> select table_name, blocks 2 from user_tables where table_name like '%ASSM%'; TABLE_NAME ...
Posted on May 26, 2008 9:11 PM
eagle_fan在Linux机器上装了一个Oracle 11g, 今天在测试AUL对Oracle 11g的支持时, 发现了一个ASSM表空间上的问题, 会导致恢复的记录数偏少, 原因是因为ASSM下每一个Extent的第一个数据块不一定是表的数据. 在Free List管理的模式下, 一个Extent中只有两种块, 数据块和没有被使用的块, 并且数据块总在最低端, 为了程序性能, 当AUL检测到第一个非数据块的块时, 就不处理这个Extent了. 然尔在ASSM的情况下, 一个Extent中可能有三种块, bitmap块(type=32), 数据块以及没有使用的块. 当bitmap块在头部时, 就导致了整个Extent中的数据都被跳过了. 不知道有没有朋友遇到这个问题? 通过SCAN EXTENT命令来生成Extent信息时, 则恢复是完全准确的. 这个问题仅限于ASM表空间及没有运行SCAN EXTENT的情况, 对于Free List管理的表空间则没有影响. 以往经历的正式数据恢复都不是ASSM类型的, 这也是这个问题没被早些发现的原因. 对于11g还要进行更详细的测试, 支持11g是没有问题的,...
Posted on September 4, 2007 2:45 PM
If you use an RSS reader, you can subscribe to a feed of all future entries tagged 'ASSM'. [What is this?]
Other tags used on this blog: