일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- wsdl
- Database
- letterspacing
- Tomcat
- 키보드
- 스레드
- 오블완
- 컨트롤러
- java
- 티스토리챌린지
- 안드로이드 스튜디오
- service name
- Docker
- httpservletreqeust
- servicename
- 스레드 덤프
- SID
- Linux
- cmd
- http
- oracle
- 톰캣
- MariaDB
- JDBC
- API
- HTML
- 영상편집
- MySQL
- ibatis
- 프로세스
- Today
- Total
블로그 이름
[ORACLE] ORA-01653 : unable to extend table TABLESPACE 본문
오라클 DB 생성 시 TABLE DDL SCRIPT에 TABLESPACE를 명시하지 않고 DB TABLESPACE를 DEFAULT로 잡아서 SYSTEM.DBF에 저장되면 TABLESPACE 부족 오류가 발생한다.
테이블을 용량이 많은 곳으로 변경하거나 TABLESPACE 용량을 늘려줘야 한다.
TABLESPACE는 1개 이상의 DATAFILE을 갖고 있으며 TABLESPACE는 영역이고, 실제 영역 안의 사이즈는 DATAFILE(*.DBF)이 사용한다.
TABLESPACE 용량 확인
SELECT A.TABLESPACE_NAME, A.BYTES/1024/1024, (A.BYTES - NVL(B.FREEBYTES, 0))/1024/1024 AS "USE_MB", NVL(B.FREEBYTES, 0)/1024/1024 AS "FREEMB", CONCAT(ROUND(NVL(B.FREEBYTES, 0) * 100 / A.BYTES, 2), '%') AS "USAGE%"
FROM (SELECT TABLESPACE_NAME, SUM(BYTES) BYTES FROM DBA_DATA_FILES GROUP BY TABLESPACE_NAME) A,
(SELECT TABLESPACE_NAME, SUM(NVL(BYTES,0)) FREEBYTES
FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) B
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME
ORDER BY "USAGE%" DESC
TABLESPACE 용량 늘리는 방법
1. TABLESPACE DATAFILE 경로 조회
SELECT TABLESPACE_NAME, BYTES/1024/1024 AS MB, FILE_NAME FROM DBA_DATA_FILES
2. DATAFILE 수정 (수동 용량 확장)
ALTER DATABASE DATAFILE 'D:\ORACLEXE\APP\ORACLE\ORADATA\XE\SYSTEM.DBF' RESIZE 2000M
2000MB로 고정
3. DATAFILE 자동 용량 증가
* 자동 증가
ALTER DATABASE DATAFILE 'D:\ORACLEXE\APP\ORACLE\ORADATA\XE\SYSTEM.DBF' AUTOEXTEND ON
* 자동 30MB 증가 및 2000MB 최대 제한
ALTER DATABASE DATAFILE 'D:\ORACLEXE\APP\ORACLE\ORADATA\XE\SYSTEM.DBF' AUTOEXTEND ON NEXT 30M MAXSIZE 2000M
* 제한없이 허용수치까지 자동 30MB 증가
ALTER DATABASE DATAFILE 'D:\ORACLEXE\APP\ORACLE\ORADATA\XE\SYSTEM.DBF' AUTOEXTEND ON NEXT 30M MAXSIZE UNLIMITED
마지막으로 DATAFILE의 AUTO EXTEND 여부를 확인하면 된다.
SELECT TABLESPACE_NAME, BYTES/1024/1024 AS MB, FILE_NAME, AUTOEXTENSIBLE FROM DBA_DATA_FILES
오늘은 테이블스페이스 확장 방법을 알아보았다.
'개발 > Database' 카테고리의 다른 글
[ORACLE] 컬럼 데이터 타입 변경 방법 (0) | 2025.03.11 |
---|---|
[MariaDB] MySQL, MariaDB 문자열 대소문자 구분하기 (0) | 2025.02.25 |
[ORACLE] 테이블 복사 및 테이블 구조 복사 (0) | 2025.02.14 |
[iBatis] ResultMap 사용 시 "The error happened while setting a property on the result object" Error 발생하는 현상 (0) | 2025.02.11 |
[ORACLE] SID와 Service Name 차이점 (0) | 2025.02.04 |