Oracle Database 11g ORA-30036:无法在撤消表空间中将段扩展8,并且#UND; UNDOTBS1'

时间:2017-04-08 00:53:17

标签: oracle oracle11g

我们正在尝试在表中输入1.6M记录,但是,我们正在进入" undo表空间"错误描述如下。有什么建议?我们在这里查看了其他类似的错误,但没有找到解决方案。

情侣笔记:

  1. 我们今天刚刚安装了db应用程序。
  2. 我们成功地在另一个表中输入了1.6M记录。之后没有提交。
  3. 然后,尝试将另一个1.6M记录添加到另一个表中并得到错误。
  4. 尝试提交第一个1.6M记录,但仍然收到错误。
  5. 错误:

    SQL Error: ORA-30036: unable to extend segment by 8 in undo tablespace 'UNDOTBS1'
    30036. 00000 -  "unable to extend segment by %s in undo tablespace '%s'"
    *Cause:    the specified undo tablespace has no more space available.
    *Action:   Add more space to the undo tablespace before retrying
               the operation. An alternative is to wait until active
               transactions to commit.
    

1 个答案:

答案 0 :(得分:0)

找到答案。遇到了一个YouTube视频,该视频有足够的信息可以帮我拼凑答案(我发现视频还行,但很有帮助):

https://youtu.be/CSD0JFc9mtw

情侣笔记

1)首先请注意,为了释放UNDO表空间中的空间,您必须提交" commit"交易。 2)第二个注释UNDO表空间有一个大小限制。 3)最后,它还有一个保留时间,所以即使你提交了事务,你也必须等待一段时间才能释放要使用的空间。

第三个是让我失望的部分,因为我无法理解为什么即使在提交交易后我仍然遇到UNDO表空间问题。

要解决问题,我所要做的只是增加表空间的大小,然后为了避免下次出现问题,我减少了保留时间(小心第二部分 - 请参阅视频)。

用这个增加尺寸:

ALTER DATABASE DATAFILE 'C:\MYDBLOCATION\UNDOTBS1.DBF' RESIZE 1024M;