我收到的查询是TEMP表空间中的空间不足。 (请参阅下面的错误消息)作为让用户重新启动并运行的快速解决方案,我只需将TEMPFILE添加到表空间即可。 (参见下面的alter statement)但是,当我再次运行查询时,它仍然没有空间。我可以从查询dba_temp_files看到表空间非常大,它确实包含两个数据文件,但我认为MAXSIZE UNLIMITED子句可以通过不允许新数据文件空间不足来解决我的问题。
除了重写查询外,你还会推荐什么?
谢谢!
戴夫
SQL Error: ORA-01652: unable to extend temp segment by 128 in tablespace TEMP
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.
ALTER TABLESPACE temp
ADD TEMPFILE '+DATAC1/cop3/tempfile/temp01.dbf' SIZE 10g
AUTOEXTEND ON
NEXT 1g
MAXSIZE UNLIMITED;
SQL> SELECT substr(tablespace_name,1,4) as tbls,
2 substr(file_name,1,40) as file_name,
3 bytes/1000000000 as gigabytes
4 FROM dba_temp_files
5 WHERE tablespace_name = 'TEMP'
6 ;
TBLS FILE_NAME GIGABYTES
---- ---------------------------------------- ----------
TEMP +DATAC1/cop3/tempfile/temp.771.915115045 21.4748365
TEMP +DATAC1/cop3/tempfile/temp01.dbf 34.359722