ORA-01652: Unable to extend temp segment by N in tablespace
OracleNe demek?
Oracle bir geçici (temp) segmenti büyütmek için tablespace'te yeterli boş alan bulamadı. Genellikle sıralama, hash join veya global geçici tablo işlemleri sırasında oluşur.
Neden olur?
TEMP tablespace'inin dolması; büyük ORDER BY, GROUP BY, DISTINCT, hash join veya index oluşturma işlemlerinin PGA belleğine sığmayıp diske taşması; datafile'ların AUTOEXTEND kapalı olması veya disk alanının bitmesi.
Nasıl çözülür?
TEMP kullanımını izleyin: SELECT * FROM v$sort_usage / v$tempseg_usage. TEMP tablespace'ine dosya ekleyin ya da büyütün: ALTER TABLESPACE temp ADD TEMPFILE '...' SIZE 2G AUTOEXTEND ON. Kalıcı bir tablespace doluysa datafile ekleyin. Sorguyu optimize ederek disk sıralamasını azaltın (uygun index, PGA_AGGREGATE_TARGET artırımı).
Aynı motorda diğer kayıtlar
- ORA-00060Deadlock detected while waiting for resource
- ORA-01017Invalid username/password; logon denied
- ORA-01555Snapshot too old: rollback segment number too small
- ORA-04031Unable to allocate N bytes of shared memory
- ORA-12154TNS: could not resolve the connect identifier specified
- ORA-12514TNS: listener does not currently know of service requested in connect descriptor
- ORA-00942Table or view does not exist