• truncate 空间不释放问题


    SQL> set linesize 200

    SQL> select segment_name, sum(bytes / 1024 / 1024/1024)

      from dba_segments

      where segment_name='T_PM_DEBIT_CARD'

      group by segment_name;  2    3    4 

     

    SEGMENT_NAME                                                                 SUM(BYTES/1024/1024/1024)

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

    T_PM_DEBIT_CARD                                                                  16.1968994

     truncate table T_PM_DEBIT_CARD;

    SQL> select segment_name, sum(bytes / 1024 / 1024 / 1024)

      from dba_segments

     where segment_name = 'T_PM_DEBIT_CARD'

     group by segment_name;  2    3    4 

     

    SEGMENT_NAME                                    SUM(BYTES/1024/1024/1024)

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

    T_PM_DEBIT_CARD                                         .836181641

    为什么还有800M呢?

    SQL> alter table T_PM_DEBIT_CARD deallocate unused keep 0;

     

    Table altered.

     

    SQL> select segment_name, sum(bytes / 1024 / 1024 / 1024)

      from dba_segments

     where segment_name = 'T_PM_DEBIT_CARD'

     group by segment_name;  2    3    4 

     

    SEGMENT_NAME                                    SUM(BYTES/1024/1024/1024)

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

    T_PM_DEBIT_CARD                                         .051513672

    是因为initial 分配的缘故.

  • 相关阅读:
    排序链表
    给定两个字符串 s 和 t,它们只包含小写字母。 字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。 请找出在 t 中被添加的字母。
    给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。
    快速排序之三路快排
    双向链表实现
    删除链表重复元素
    链表是否是回文串
    链表逆序
    排序之归并排序
    线性表之链表实现
  • 原文地址:https://www.cnblogs.com/zhaoyangjian724/p/3797954.html
Copyright © 2020-2023  润新知