如何降低Oracle表的高水位

如何降低Oracle表的高水位,第1张

1. 执行表重建指令 alter table table_name move(验证不可行,不降低水位线,但可释放表空间)

当你创建了一个对象如表以后,不管你有没有插入数据,它都会占用一些块,ORACLE也会给它分配必要的空间.同样,用ALTER TABLE MOVE释放自由空间后,还是保留了一些空间给这个表.

ALTER TABLE ... MOVE 后面不跟参数也行,不跟参数表还是在原来的表空间,Move后记住重建索引.

查询失效索引语句:select index_name,table_name,tablespace_name,status From dba_indexes Where owner='HNUNICOM' And status<>'VALID'

重建索引语句:alter index INDEX_NAME rebuild tablespace TABLESPACE_NAME

如果以后还要继续向这个表增加数据,没有必要move,只是释放出来的空间,只能这个表用,其他的表或者segment无法使用该空间。

2. 执行alter table table_name shrink space(已经验证成功,推荐使用,可释放数据库和磁盘空间空间,大表可同时降低表自身和表空间的高水位线,小表则只可以降低表自身的高水位线,原因不详)

注意,此命令为Oracle 10g新增功能,执行该指令之前必须允许行移动 alter table table_name enable row movement

3. 复制要保留的数据到临时表t,drop原表,然后rename临时表t为原表(未验证

4. 用EXP导出后,删除原表/表空间,之后用IMP重新导入(验证成功)

5. Alter table table_name deallocate unused(验证不可行,不降低水位线)

注:这证明,DEALLOCATE UNUSED为释放HWM上面的未使用空间,但是并不会释放HWM下面的自由空间,也不会移动HWM的位置.

6. 尽量使用truncate(验证不可行,不降低水位线,可释放数据库空间,但truncate后表默认空间大小为删除前的空间大小,如想释放计算机磁盘空间,需要用方法2压缩)

解决delete后查询的性能问题,如何清理碎片,降低高水位?

对于oracle,我知道delete后高水位不会下降,也就是说对于查询性能影响比较大。

对于sqlserver,是否也有这种问题?如果降低高水位。导入导出肯定可以,但是对于在线系统,而且delete都是按条件删的。如何解决由于插入删除后的查询性能问题呢?

请大师们指点。谢谢!

[解决办法]

删除少量数据应该没有什么影响,默认数据库会自动计算

如果是执行大量的删除、修改的,重新索引整理就可以了

[解决办法]

这样的东西应该不用考虑吧

[解决办法]

删除后立即COMMIT

[解决办法]

查看一下索引碎片,整理索引.

[解决办法]

关注一下!!

[解决办法]

关注~

[解决办法]

一般来说,碎片情况如果严重的话,可以整理或者重建一下聚集索引,其他索引会一起更新

[解决办法]

delete 或 update 后,会使索引的物理位置不连续,要解决这个问题

定期用dbcc 清理碎片或重新建立索引

注意,有时清理碎片的时间可能会比后面的 *** 作还要费时

[解决办法]

学习

[解决办法]

聚集索引都整理好了,还理会什么表啊?

与聚集索引的情况下,数据存储是依赖聚集索引来存储的

[解决办法]

数据库维护计划里面有重新组织索引和重新整理索引

可以定一个计划每周执行一个,将指定的数据库或某个表下面所有的索引重新整理一次

在Oracle数据的存储中,可以把存储空间想象为一个水库,数据想象为水库中的水。水库中的水的位置有一条线叫做水位线,在Oracle中,这条线被称为高水位线(High-warter mark, HWM)。在数据库表刚建立的时候,由于没有任何数据,所以这个时候水位线是空的,也就是说HWM为最低值。当插入了数据以后,高水位线就会上涨,但是这里也有一个特性,就是如果你采用delete语句删除数据的话,数据虽然被删除了,但是高水位线却没有降低,还是你刚才删除数据以前那么高的水位。也就是说,这条高水位线在日常的增删 *** 作中只会上涨,不会下跌。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6839319.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-29
下一篇 2023-03-29

发表评论

登录后才能评论

评论列表(0条)

保存