ORA-01652: 无法在表空间 TEMP 中将临时段扩展 128 - 这是可恢复的吗?

Posted

技术标签:

【中文标题】ORA-01652: 无法在表空间 TEMP 中将临时段扩展 128 - 这是可恢复的吗?【英文标题】:ORA-01652: unable to extend temp segment by 128 in tablespace TEMP - is this recoverable? 【发布时间】:2017-01-10 08:12:20 【问题描述】:

我有一个包含 188307430 条记录的表。 它也有分区。

上面两个语句是我在表上触发 SELECT 后实现的

select * from emp order by created_date;    

这导致了上述与 TEMP 表空间中的临时段有关的异常。 所以我有多个问题: 此问题是否可以恢复 - 即所有其他用户都会受到影响吗? 还是其他选择只会导致 Oracle 清理 TEMP 表空间?

【问题讨论】:

【参考方案1】:

01652, 00000, "无法在表空间 %s 中将临时段扩展 %s"

原因:未能为 指示的表空间中的一个临时段。

操作:使用 ALTER TABLESPACE ADD DATAFILE 语句添加一个或多个 文件到指定的表空间。

是的,这是可恢复的。在 Oracle 数据库中,SMON 进程负责清理不再需要的临时段。

所有其他用户都会受到影响吗?

是的,如果他们的 SQL 需要 TEMP 段,那么他们也会受到影响。

【讨论】:

您能否详细说明为什么其他用户会受到影响 - 如果 - smon 进程会清理临时段? @satishmarathe:如果 SMON 找不到要清理的临时段,那么所有这些都被 Oracle 进程使用了​​吗?您需要为新用户提供额外空间。 @satishmarathe:还要检查您的临时文件是否可自动扩展。

以上是关于ORA-01652: 无法在表空间 TEMP 中将临时段扩展 128 - 这是可恢复的吗?的主要内容,如果未能解决你的问题,请参考以下文章

Pentaho Spoon 转换抛出:ORA-01652:无法在表空间 TEMP 中将临时段扩展 128

ORA-01652: 使用 DBMS_RANDOM.VALUE 时无法在表空间 TEMP 错误中将临时段扩展 128

ORA-01652 - 无法在表空间中将临时段扩展 4096 (oracle 10)

ora-01652无法通过128(在表空间temp中)扩展temp段

oracle暂时表空间 ORA-01652:无法通过16(在表空间XXX中)扩展 temp 字段

ORA-01652:无法通过128(在表空间ZLTOOLSTMP中)扩展 temp 段