如何高效删除oracle数据库中的分区,而不影响正在运行的程序?

时间:2021-01-16 05:02:06
我的系统中oracle需要存储大量数据,一般在1年左右,但是超过1年的都要自动删除掉,所以程序需要在后台自动删除数据,但是由于数据量比较大,删除时会影响程序的正常运行,程序处于无响应状态下,那位大虾有过这方面的经验,希望指点一下,谢谢!

11 个解决方案

#1


删除时使用线程是否可以

#2


利用Oracle自带的工具进行完全备份,然后删除,例如,利用TRUNCATE TABLE这种命令,不需要写日志,速度会很快,不太影响性能的命令进行删除,删除的数据无法回复。

#3


注意任务计划执行的时刻,可以在负载较小的时候执行。

#4


用定时器、线程或在Application的OnIdle事件中删除,不要一次都删除,每次删除一小部分。

#5


如果有全局索引:
alter table table_name  truncate partition NO_分区号 UPDATE GLOBAL INDEXES;
局索引或者无索引:
alter table table_name  truncate partition NO_分区号 ;

#6


如果有全局索引: 慢
alter   table   table_name     truncate   partition   NO_分区号   UPDATE   GLOBAL   INDEXES; 
局索引或者无索引: 非常快
alter   table   table_name     truncate   partition   NO_分区号   ;

#7


up

#8


to ouygg : 我的表肯定有全局索引。

to cczlp :用定时器、线程或在Application的OnIdle事件中删除,不要一次都删除,每次删除一小部分。这样怎么控制阿?线程中内存要增加,麻烦看看:
http://topic.csdn.net/u/20080116/19/9f443778-3794-440c-9b14-cc88975331a6.html?seed=1328592147

谢谢

#9


如果有全局索引改为局部索引,删除分区数据非常快!!!一个分区,几个毫秒就够啦。

#10


delete是不释放表空间的,索引和表越来越臃肿,不好!

#11


麻烦看看: 
http://topic.csdn.net/u/20080116/19/9f443778-3794-440c-9b14-cc88975331a6.html?seed=1328592147 

谢谢

#1


删除时使用线程是否可以

#2


利用Oracle自带的工具进行完全备份,然后删除,例如,利用TRUNCATE TABLE这种命令,不需要写日志,速度会很快,不太影响性能的命令进行删除,删除的数据无法回复。

#3


注意任务计划执行的时刻,可以在负载较小的时候执行。

#4


用定时器、线程或在Application的OnIdle事件中删除,不要一次都删除,每次删除一小部分。

#5


如果有全局索引:
alter table table_name  truncate partition NO_分区号 UPDATE GLOBAL INDEXES;
局索引或者无索引:
alter table table_name  truncate partition NO_分区号 ;

#6


如果有全局索引: 慢
alter   table   table_name     truncate   partition   NO_分区号   UPDATE   GLOBAL   INDEXES; 
局索引或者无索引: 非常快
alter   table   table_name     truncate   partition   NO_分区号   ;

#7


up

#8


to ouygg : 我的表肯定有全局索引。

to cczlp :用定时器、线程或在Application的OnIdle事件中删除,不要一次都删除,每次删除一小部分。这样怎么控制阿?线程中内存要增加,麻烦看看:
http://topic.csdn.net/u/20080116/19/9f443778-3794-440c-9b14-cc88975331a6.html?seed=1328592147

谢谢

#9


如果有全局索引改为局部索引,删除分区数据非常快!!!一个分区,几个毫秒就够啦。

#10


delete是不释放表空间的,索引和表越来越臃肿,不好!

#11


麻烦看看: 
http://topic.csdn.net/u/20080116/19/9f443778-3794-440c-9b14-cc88975331a6.html?seed=1328592147 

谢谢