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';

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

相关推荐
好奇的菜鸟2 小时前
如何在IntelliJ IDEA中设置数据库连接全局共享
java·数据库·intellij-idea
tan180°2 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
满昕欢喜2 小时前
SQL Server从入门到项目实践(超值版)读书笔记 20
数据库·sql·sqlserver
Hello.Reader4 小时前
Redis 延迟排查与优化全攻略
数据库·redis·缓存
简佐义的博客4 小时前
破解非模式物种GO/KEGG注释难题
开发语言·数据库·后端·oracle·golang
爬山算法5 小时前
MySQL(116)如何监控负载均衡状态?
数据库·mysql·负载均衡
老纪的技术唠嗑局7 小时前
OceanBase PoC 经验总结(二)—— AP 业务
数据库
阿里云大数据AI技术8 小时前
OpenSearch 视频 RAG 实践
数据库·人工智能·llm
m0_6239556610 小时前
Oracle使用SQL一次性向表中插入多行数据
数据库·sql·oracle
阿蒙Amon11 小时前
C#读写文件:多种方式详解
开发语言·数据库·c#