zoukankan      html  css  js  c++  java
  • oracle数据存储结构

    数据块(data block) oracle最小的逻辑部件,数据块大小合适的选择可以提高性能;
    区段(extent)由几个相邻的数据块组合在一起;

    段(segment)有一组区段构成;

    表空间(tablespace)是包含物理数据文件的逻辑实体,存放数据库的所有可用数据,因此表空间的尺寸也是包含数据的数据文件尺寸的总和,是oracle 主要的逻辑存储结构。

     

    tablespacesegment, segmentextentextent有连续在一起的db block组成。

     

    data block的大小是操作系统的data block的整数倍,ORACLE默认是8K,还有4K16K32k几种。


    在参数文件里的参数为DB_BLOCK_SIZE,查看方法

    show parameter db_block_size  

    查看所有的参数列表

    Show parameters;

    9i显示结果如下

    SQL> show parameter db_block_size;

     

    NAME                                 TYPE        VALUE

    ------------------------------------ ----------- ------------------------------

    db_block_size                        integer     8192

     

    所以默认是8K=1024Byte*8=8192Byte

    可以通过PCTFREE,PCTUSER,FREELIST进行管理,从9i开始ORACLE可以自动管理。
    extent
    是几个逻辑上相邻的data block组合在一块。

    segment
    通常一张表是一个segment,一个INDEXBLOBCLOB各自占用一个segment

    tablespace
    是数据库中数据逻辑存储的地方,一个tablespace可以包含多个数据文件。上面三个的配置如果和tablespace的配置有冲突,以tablespace为准。

     

    注意

    通过 select blocks  from dba_tables where table_name='ABC' and wner='SYS';

    结果是0

    Insert into abc(1,aaa);

    在查一次

    结果为 1

    Rollback;(回滚的时候)

    在查 select * from abc where id=1 没记录

     

    select blocks  from dba_tables where table_name='ABC' and wner='SYS';

    结果仍然为 1

    说明回滚时并不回滚快的物理化 而是回滚的数据逻辑

  • 相关阅读:
    线段树 BZOJ1858 [Scoi2010]序列操作
    dfs序+线段树 BZOJ3252 攻略
    线段树 BZOJ3888 [Usaco2015 Jan]Stampede
    线段树 BZOJ1798 [Ahoi2009]Seq 维护序列seq
    大坑【持续更新……】
    LCA树剖法模板
    Tarjan-LCA HDU2586 How far away ?
    动态规划 洛谷P2401 不等数列
    搜索 洛谷P2530 [SHOI2001]化工厂装箱员
    动态规划 洛谷P1077 摆花
  • 原文地址:https://www.cnblogs.com/liaomin416100569/p/9332152.html
Copyright © 2011-2022 走看看