大型数据库必然遇到的问题 1. unix cron or oracle job2. 定时rebuild index 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1. unix cron or oracle job2. 定时rebuild index 举个例子: 1、开始应把表分区。 2、一天的数据放在一个分区里, 每一个月: 划分一次分区 并建好分区的本地索引。 3、要删除数据,只需定时执行删除指定分区的脚本就可以了,不管分区内数据有多少,都不费时,并且本地索引也没了,不会用TEMP表空间,无须再建索引。 sun9989(一品黄山):请详细说一下第3条好吗 sun9989(一品黄山):的办法很好,但我不知道怎么做。 一品黄山的方法,有一定道理。但我用的是7.3版,没有分区的功能。定期卸出数据,应是数据库应用必备的功能。我所知道的,EXPORT可以把数据卸出,但数据仍保留在数据库,空间不释放,EXPORT实际是起到备份数据的作用。DELETE可以把数据删除,据我所知,用DELETE删数据,相应的INDEX表空间的空间并不释放,必须重建INDX。在我的应用中每月要删除10万条记录,还剩100万条记录,以腾出空间。我想问:除DELETE数据,再建INDEX外,这个办法是否可行。重建INDEX需要大量的TEMP表空间。还有别的办法吗? 建分区时,当然取分区名字是有规可寻的。在删时,生成动态SQL,执行。让我想想再举个列子,放在别的贴子上,现在让我们帮GuYangRen (古阳) 想办法吧。 1。定期truncate partition(先分区)经常这样做容易导致表的退化,有空的时候从新组织一下表2。我不知道你的表多大,不过你经常的大规模的truncate也会导致index的退化,可以试着删掉重建,同时指定很大的排序区(这样会减少temp的使用,并提高速度,当然,你必须在sessioin级设定);至于碎片问题,等待一定时候集中解决。 我也经常 truncate partition 来删除数据,但是想请教鸟儿 表和索引的退化是什么意思? 另外:友情提醒即使 oracle9i中,建有全局索引的表truncate partition会出错,局部索引没影响 我没有比较过对分区表的的全局index和局部index哪个效率跟高退化是指由于人为的原因造成性能的下降,一般由于经常的对表dml造成的碎片,index不可用等因素 求教一条LIKE SQL语句的优化 求解有关Oracle11g数据导出 Oracle 存储过程问题 怎么用存储过程实现插入多行数据到表中 请教SQL的写法(2)??? 初学者问一个设计表的问题 如何优化delete语句? oracle存储过程中游标好象取不到数据 Orale 连接查询顺序 请教sql高手:动态港存的计算问题 oracle的ODBC连接,unix下的,请教! About status='SNAPED' in v$session view
2. 定时rebuild index
1、开始应把表分区。
2、一天的数据放在一个分区里,
每一个月:
划分一次分区 并建好分区的本地索引。
3、要删除数据,只需定时执行删除指定分区的脚本就可以了,不管
分区内数据有多少,都不费时,并且本地索引也没了,不会用TEMP表空间,
无须再建索引。
请详细说一下第3条好吗
经常这样做容易导致表的退化,有空的时候从新组织一下表
2。我不知道你的表多大,
不过你经常的大规模的truncate也会导致index的退化,
可以试着删掉重建,同时指定很大的排序区(这样会减少temp的使用,并提高速度,当然,你必须在sessioin级设定);
至于碎片问题,等待一定时候集中解决。
表和索引的退化是什么意思?
另外:友情提醒即使 oracle9i中,建有全局索引的表truncate partition会出错,局部索引没影响