zoukankan      html  css  js  c++  java
  • 表碎片

    SQL> SELECT TABLE_NAME,  (BLOCKS * 8192 / 1024 / 1024) -  (NUM_ROWS * AVG_ROW_LEN / 1024 / 1024) "Data lower than HWM in MB" 

      FROM USER_TABLES  WHERE table_name = 'T1'; 

    TABLE_NAME           Data lower than HWM in MB 

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

    T1                                  33.5791626 

    整理表碎片

    10g之前

    两种方法:

    • 导出表,删除表,再导入表
    • alter table move

    一般选择第二种,需要重建索引。

    10g后

    从 10g 开始,提供一个 shrink 命令,需要表空间是基于自动段管理的。

    可以分成两步操作:

    -- 整理表,不影响DML操作  SQL> alter table TABLE_NAME shrink space compact;   
    -- 重置高水位,此时不能有DML操作 SQL> alter table TABLE_NAME shrink space;

    也可以一步到位:

    -- 整理表,并重置高水位  SQL> alter table TABLE_NAME shrink space;  

    shrink 的优势:

    • 不需要重建索引。
    • 可以在线操作。
    • 不需要空闲空间,alter move需要跟当前表一样大小的空闲空间。
  • 相关阅读:
    codevs1288 埃及分数
    codevs1792 分解质因数
    dp
    JAVA大数贪心
    求最长不重叠子串
    初识后缀数组
    dp
    两数相除,判断小数位是否有限位
    构造二分图匹配
    建立多个树状数组
  • 原文地址:https://www.cnblogs.com/bwdata/p/3915293.html
Copyright © 2011-2022 走看看