Oracle -在线回缩表

conn scott/tiger

DROP TABLE EMP1 PURGE;

CREATE TABLE EMP1 AS SELECT * FROM EMP;

alter table emp1 enable row movement;

-- 启动回缩特性

insert into emp1 select * from emp1;

/

/

commit;

-- 增加到14000行

-- 分析表的结构

analyze table emp1 compute statistics;

select NUM_ROWS,BLOCKS,EMPTY_BLOCKS,AVG_SPACE from tabs where table_name='EMP1';

-- 查询高水位

delete emp1 where deptno=30;

commit;

-- 删除一半的数据

analyze table emp1 compute statistics;

-- 分析表的结构

select NUM_ROWS,BLOCKS,EMPTY_BLOCKS,AVG_SPACE from tabs where table_name='EMP1';

-- 查询高水位

SELECT DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID) BLOCK#,COUNT(*) FROM EMP1

GROUP BY DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID);

-- 查询块内行的分布

SELECT EXTENT_ID,BLOCK_ID,BLOCKS FROM DBA_EXTENTS WHERE SEGMENT_NAME='EMP1';

-- 将数据挪动到表的前端,但不回缩高水位

alter table EMP1 shrink space compact;

-- 回缩高水位

alter table EMP1 shrink space ;

analyze table emp1 compute statistics;

select NUM_ROWS,BLOCKS,EMPTY_BLOCKS,AVG_SPACE from tabs where table_name='EMP1';

该特性和压缩的特性冲突。

相关推荐
m***5672几秒前
Win10下安装 Redis
数据库·redis·缓存
Warren985 分钟前
Python自动化测试全栈面试
服务器·网络·数据库·mysql·ubuntu·面试·职场和发展
kka杰2 小时前
MYSQL 表的增删查改-更新/删除
数据库·mysql
q***44812 小时前
mysql配置环境变量——(‘mysql‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件解决办法)
数据库·mysql·adb
风123456789~3 小时前
【OceanBase专栏】OB租户-创建实验
数据库·笔记·oceanbase
cmcm!3 小时前
学习笔记1
数据库·笔记·学习
Zero-Talent3 小时前
MySQL初级
数据库·mysql·oracle
烟雨归来3 小时前
oracle数据文件大小异常故障处理
数据库·oracle
jenchoi4133 小时前
【2025-11-23】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
网络·数据库·安全·web安全·网络安全
auspicious航3 小时前
PostgreSQL数据库之使用 pg_waldump 和 pg_walinspect 查看 WAL 文件的内容
数据库·postgresql