The error message "01652 unable to extend the temp segment through 128 (in the tablespace temp)" is reported when the Oracle stored procedure is executed today ".
After running the DF command in Linux, it is found that the space used by the disk is 100% due to autoextend.
[Root @ localhost ~] # DF-H file system capacity in use % available mount point/dev/sda1 9.5g 8.6g 439 M 96%/dev/sda3 119G 52g 61g 46%/home/sistmpfs 2.0g 0 2.0g 0%/dev/SHM
(The above sd1 disk space is the result of deleting some temporary files)
The solution is to create a new tablespace in another disk. The statement is as follows:
[Root @ localhost Sis] # mkdir oracle_tmp [root @ localhost Sis] # chown-r Oracle/home/SIS/oracle_tmp // Add a new DBF file to the EP tablespace [root @ localhost sis] # Su-l Oracle [Oracle @ localhost ~] $ Sqlplus/nologsql * Plus: Release 10.2.0.1.0-production on Thu Nov 10 11:35:35 2011 copyright (c) 1982,200 5, Oracle. all rights reserved. SQL> Conn/As sysdbaconnected. SQL> alter tablespace EP add datafile 2'/home/SIS/oracle_tmp/ep02.dbf' size 500 m autoextend on next 100 m; tablespace altered.
SQL> alter database datafile '/home/oracle/app/oracle/oradata/orcl/EP01.dbf' 2 autoextend off;Database altered.
After creating a new data file, it seems that Oracle will automatically and randomly write it to a later data file.
Create a temporary tablespace:
SQL> create temporary tablespace TEMP2 tempfile 2 '/home/sis/oracle_tmp/TEMP2.dbf' size 500m reuse autoextend on next 100m;Tablespace created.SQL> alter database default temporary tablespace "TEMP2";Database altered.