请教oracle 回滚段问题,一个表有二千万条记录,要删除其中一千万条 可以一次删100万。ORA-1555最常见的问题之一。方法:增加RBS的大小等,书上有详细介绍。或在DELETE时不要做别的操作。停重演日志用DELETE TABLE_NAME NOLOG; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我已将rbs 设位1G了请问是不是停重演日志就可以把数据清除了? 将事务细分:delete from yourtab;commit;改为:delete from yourtab where id<1000000commit;delete from yourtab where id>=1000000commit;如果有可能每删除一条记录提交一次,不要担心速度,实际会比一次提交快,尤其数据量大时.另, 增加回滚段初始扩展大小,问题不在回滚段多少,而是大小.停止重做日志会对将来的恢复带来困难,建议不要. 同意楼上。不要停止redolog,最好的方法是分段提交。 具体情况是:本人前几天重新启动了数据库,由于一参数没设置好导致ORACLE 定时器无效,定时清理的过程没执行,事物已经在过程中细化了,再细化比较麻烦。表中的数据都是实时数据没有恢复的必要,我现在只是想确定停止重演日志就可以删除了?谢谢! 具体情况是:本人前几天重新启动了数据库,由于一参数没设置好导致ORACLE 定时器无效,定时清理的过程没执行,事物已经在过程中细化了,再细化比较麻烦。表中的数据都是实时数据没有恢复的必要,我现在只是想确定停止重演日志就可以删除了?谢谢! 没必要停止重做日志。你将你的RBS调大点。 使用truncate是最快的,但你的表适合这样的操作吗? 我知道,用tuncate截这种大表比较爽,但问题是表中还有一千万条数据还是有用的啊 alter table t nologging;delte ;commit;alter table t logging;我没试过,你可试一下。如你就用不间断运行,在nologgin和logging之间出现错误,此时加入数据不可能恢复。 今天看了一下资料,发现一般的DML语句就算用nologging数据库也会记日志,也就是说DML不可能NOLOG。 外键由不定数的元素组合确定,怎么设计更合理? 求助 关于高效率查询 根据三个值查询 sql作业调度问题,昨天上不了。 ms sql 2000创建自定义类型 当期产量产值,累计产量产值怎么取数? 救命啊:一般性网络错误。请检查网络文档。。 请问我在Create Table时为什么出现这种警告信息? 非高手勿进........ 如何实现My SQL中的数据同步到SQL Server中(在线等ing) sqlserver中,恢复数据库时被人为中断,连服务组都进不去了 怎样把VFP数据库转化为SQLSERVER?
我已将rbs 设位1G了
请问是不是停重演日志就可以把数据清除了?
delete from yourtab;
commit;
改为:
delete from yourtab where id<1000000
commit;
delete from yourtab where id>=1000000
commit;
如果有可能每删除一条记录提交一次,不要担心速度,实际会比一次提交快,尤其数据量大时.
另, 增加回滚段初始扩展大小,问题不在回滚段多少,而是大小.停止重做日志会对将来的恢复带来困难,建议不要.
不要停止redolog,最好的方法是分段提交。
表中的数据都是实时数据没有恢复的必要,我现在只是想确定停止重演日志就可以删除了?
谢谢!
表中的数据都是实时数据没有恢复的必要,我现在只是想确定停止重演日志就可以删除了?
谢谢!
你将你的RBS调大点。
delte ;
commit;
alter table t logging;
我没试过,你可试一下。
如你就用不间断运行,在nologgin和logging之间出现错误,此时加入数据不可能恢复。
也就是说DML不可能NOLOG。