undo表空间满了怎么办
插入数据或更新时,有时会报ora_30036错误,导致数据插入失败。
原因是数据库的undo表空间不足。有两种方法可以解决undo表空间满的问题。种类。
方法一:
添加undo表空间数据文件
alter tablespace undo添加数据文件'/u01/oracle/backup/undo02.dbf'大小100M复用;
方法二:
切换undo表空间
1.创建新表空间undotbs3
创建undo表空间undotbs3数据文件'/u01 /oracle/backup/undo03.dbf';
2.切换到新的Undo表空间
alter system set undo_tablespace=undotbs3scope=both;
3.删除原来的undo表空间。如果无法删除,可以重启数据库再删除。
drop tablespace undo包括内容和数据文件级联约束;
注意:如果只是drop tablespace undo,只会删除控制文件的记录,不会物理删除文件,并且只有在不使用时才必须处于删除撤消状态。
默认的Undo_retention只有15分钟。这个默认值一般不能满足系统的需要。
一般建议改为3小时,以便在紧急情况下有更多的准备时间。
--修改undo_retention回滚段保留时间的方法:
首先显示回滚段的保留时间,显示的时间单位是“秒”。
显示参数undo_retention
oracle中undo_retention的默认时间是900秒。
如果要修改undo_retention的默认时间,请使用fo用下面一句修改:
ALTER SYSTEM SET undo_retention=10800 SCOPE=BOTH;
这篇关于《undo表空间满了怎么办》的文章就分享到这里。希望以上内容能够给大家带来一些帮助,让大家能够学到更多的知识。如果您觉得文章不错,请转发出去,让更多的人看到。
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > undo表空间满了怎么办