Oracle清除表的高水位线
来源:互联网 发布:淘宝网广场舞服装套装 编辑:程序博客网 时间:2024/04/30 13:58
在新增记录时,HWM会慢慢往上移,但是在删除记录后,HWM却不会往下移。所以在使用delete from命令删除大量数据时会导致因HWM引起的性能问题。
删除高水位的最直接的方法就是truncate Table 但是这种方式太过暴力,所以用以下的方法来删除高水位线。
--删除数据
DELETE FROM GJDS_BUS_OIL_LOG
WHERE VERSION < (13112-100);
--压缩快
move最好是在空闲时做 记得move的是会产生TM锁的 move以后记得重建indexALTER TABLE GJDS_BUS_OIL_LOG MOVE;
--压缩快之后所有索引都会失效,需要重建一下索引
ALTER INDEX INDEX_NAME REBUILD;
--然后分析下表
ANALYZE TABLE GJDS_BUS_OIL_LOG COMPUTE STATISTICS FOR TABLE FOR ALL INDEXES FOR ALL INDEXED COLUMNS;
--查看块总数
SELECT SEGMENT_NAME, EXTENTS, BLOCKS
FROM USER_SEGMENTS
WHERE SEGMENT_NAME = 'GJDS_BUS_OIL_LOG';
--查看高水位
SELECT BLOCKS, EMPTY_BLOCKS
FROM DBA_TABLES
WHERE TABLE_NAME = 'GJDS_BUS_OIL_LOG'
AND OWNER = 'BUS';
--查看实际用了多少块
SELECT COUNT(DISTINCT DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID)) USED_BLOCK
FROM GJDS_BUS_OIL_LOG S;
另一种方法是使用SHRINK SPACE
以下情况不能使用SHRINK SPACE
■ IOT mapping tables
■ Tables with rowid based materialized views
■ Tables with function-based indexes --函数索引
■ SECUREFILE LOBs
■ Compressed tables
■ Tables with rowid based materialized views
■ Tables with function-based indexes
■ SECUREFILE LOBs
■ Compressed tables
如果有函数索引需要删除函数索引才可以使用
--启用ROW MOVEMENT
ALTER TABLE GJDS_BUS_OIL_LOG ENABLE ROW MOVEMENT;
--压缩段
ALTER TABLE GJDS_BUS_OIL_LOG SHRINK SPACE;
同样需要重建索引和重新分析表
参考资料:http://www.blogjava.net/decode360/archive/2009/07/14/287767.html
2 0
- Oracle清除表的高水位线
- 修正ORACLE表的高水位线
- ORACLE的高水位线
- oracle高水位,水位线
- Oracle表段中的高水位线HWM+修正ORACLE表的高水位线
- oracle高水位线
- Oracle高水位线
- oracle高水位线
- Oracle高水位线
- ORACLE高水位线
- Oracle高水位线
- Oracle 高水位线
- 修正ORACLE表的高水位线HWM
- Oracle数据库查看表的高水位线
- oracle里高水位线的概念
- Oracle 高水位线的一点研究
- oracle的高水位线(HWM)
- Oracle的高水位线介绍
- ora-27102 solaris 内存限制
- 纯javascript实现文字、图片无限滚动效果
- Python的日志系统
- Drools入门Helloworld
- 客户端测量输出文章的宽高方案
- Oracle清除表的高水位线
- spring-jms(activemq实现)使用queue发送消息简单例子
- 对自己之前做过项目所做的一些笔记
- 软件开发:个人与团队是永远的核心
- 服务器,tomcat,网页请求错误400,The request sent by the client was syntactically incorrect的问题
- Linux下svn命令行工具使用简介
- VBS基础篇 - 对象(10) - Wscript对象
- JS生成子节点并且附加ID,name,然后提交表单;
- Houdini下如何安装Arnold