【发布时间】:2014-10-10 14:56:33
【问题描述】:
我有一个大型 Oracle 表,其中包含 542512 行。它有三列,当我尝试使用以下命令为其创建索引时:
CREATE INDEX FTS_INDEX ON FILTERED_TEKLI_IIS_TABLOSU (ilAdi,ilceAdi,caddeAdi)
Oracle 给出以下错误:
SQL Error: ORA-01652: unable to extend temp segment by 128 in tablespace SYSTEM
01652. 00000 - "unable to extend temp segment by %s in tablespace %s"
*Cause: Failed to allocate an extent of the required number of blocks for
a temporary segment in the tablespace indicated.
*Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more
files to the tablespace indicated.
我搜索了这个错误,发现它是由于Oracle在对大表执行连接表、创建索引等操作时没有足够的空间来存储中间数据时产生的。但我没有找到一个明确的解决方案。这些 ALTER TABLESPACE 和 ADD DATAFILE 命令似乎可以完成这项工作,但我不确定如何调用这些以及使用哪些参数。任何帮助将不胜感激。
【问题讨论】:
-
"使用 ALTER TABLESPACE ADD DATAFILE 语句将一个或多个文件添加到指定的表空间。"更多信息,请访问dba-oracle.com/…