首页 > Linux操作系统 > Linux操作系统 > delete ,truncate
此处仅为自己的一些简单测试
SQL> select segment_name,extents,bytes/1024/1024 mb from user_segments;
SEGMENT_NAME EXTENTS MB
------------------------- ---------- ----------
TT2 206 1472
TT1 206 1472
TT 206 1472
SQL> truncate table tt1 reuse storage;
Table truncated.
Elapsed: 00:00:58.48
SQL> truncate table tt;
Table truncated.
Elapsed: 00:01:19.65
SQL> truncate table tt2 drop storage;
Table truncated.
Elapsed: 00:06:12.85
SQL> alter table tt1 deallocate unused;
Table altered.
Elapsed: 00:07:59.81
SQL> select segment_name,extents,bytes/1024/1024 mb from user_segments;
SEGMENT_NAME EXTENTS MB
------------------------- ---------- ----------
TT1 206 1472
TT 1 .0625
Elapsed: 00:00:00.03
SQL> select segment_name,extents from user_segments;
SEGMENT_NAME EXTENTS
------------------------- ----------
TT1 203
TT 1
TT2 206
Elapsed: 00:00:00.02
delete ,truncate ,truncate xxx reuse storage
truncate xxx drop storage;
delete table_name; 对于大表不建议使用
truncate table xxx; 清空表,并回收extent,速度比reuse storage慢
truncate table xxx reuse storage; 清空表,但不回收extent,速度快
truncate table xxx drop storage; 速度慢
alter table xxx deallocate unused; 速度慢
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22779291/viewspace-719082/,如需转载,请注明出处,否则将追究法律责任。