ORA-01653: unable to extend table SCHEMA.TABLE by N in tablespace USERS
Tablonun yeni bir extent’e ihtiyacı var ama tablespace’te yer yok. Boş alana ve autoextend sınırlarına bakın; sonra datafile ekleyin ya da büyütün.
ORA-01653 ne demek?
Tablolar extent’lerle büyür. Yeni extent sığmazsa ona ihtiyaç duyan insert ya da update ORA-01653 ile düşer. Boş alan parçalanmışsa ya da datafile’lar MAXSIZE’a ulaştıysa, tablespace’te hâlâ boş alan görünürken de olabilir. İndekslerde aynı hata ORA-01654’tür.
ORA-01653 neden olur?
- Tablespace dolu ve autoextend kapalı.
- Datafile’lar
MAXSIZE’a ya da smallfile sınırına ulaştı. - Datafile’ın bulunduğu disk dolu.
- Temizlik işi olmayan bir log tablosu gibi beklenmedik büyüme.
ORA-01653 nasıl çözülür?
- Kullanılan ve boş alanı, her datafile’ın autoextend ayarını kontrol edin:
DBA_DATA_FILESveDBA_FREE_SPACE. - Datafile ekleyin ya da var olanı büyütün.
- Makul bir sınırla autoextend’i açın ve diskte yer olduğunu doğrulayın.
- Hangi tabloların büyüdüğüne ve eski verinin arşivlenip arşivlenmeyeceğine bakın.
ORA-01653 örneği
Datafile’lar ve sınırları:
SELECT file_name, ROUND(bytes / 1024 / 1024) AS mb, autoextensible,
ROUND(maxbytes / 1024 / 1024) AS max_mb
FROM dba_data_files
WHERE tablespace_name = 'USERS';
Yer ekleyin:
ALTER TABLESPACE users ADD DATAFILE SIZE 5G AUTOEXTEND ON NEXT 512M MAXSIZE 30G;
SQLlightspeed’de
Bir ifade hata verdiğinde SQLlightspeed’in hata paneli, hata kodunu sade bir Türkçe açıklama ve ne yapmanız gerektiğine dair bir öneriyle; Oracle’ın kendi mesajı ve Oracle dokümantasyonuna bağlantıyla birlikte gösterir — bu hata ve sık görülen onlarca başka hata için.
İlgili hatalar
ORA-01652ORA-00257ORA-01031 Tüm Oracle hataları →
Oracle dokümantasyonu: ORA-01653. Oracle, Oracle Corporation’ın tescilli ticari markasıdır. SQLlightspeed’in Oracle ile bir bağlantısı yoktur.