반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- springboot
- AWS CLI
- No tests found for given includes
- java version
- xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools)
- 스프링부트테스트
- yum install java
- Medium
- Java 1.8
- querydsl no sources given
- property or field 'jobparameters' cannot be found on object of type
- easy
- no sources given
- maybe not public or not valid?
- java 버전 변경
- aws
- LeetCode
- mac os git error
- parse
- error
- java 여러개 버전
- java
- log error
- java 11
- springboottest
- springbatch error
- el1008e
- OpenFeign
- java 1.8 11
- JUnit
Archives
- Today
- Total
쩨이엠 개발 블로그
[Oracle] Cause: java.sql.SQLException: ORA-01659: 7 을(를) 넘어서 테이블스페이스 TS_MM_DATA01에 MINEXTENTS를 할당할 수 없습니다 본문
개발
[Oracle] Cause: java.sql.SQLException: ORA-01659: 7 을(를) 넘어서 테이블스페이스 TS_MM_DATA01에 MINEXTENTS를 할당할 수 없습니다
쩨이엠 2023. 10. 16. 18:14728x90
반응형
오랜만에 Oracle을 썼더니 아무것도 기억이 안난다
그 와중에 이상한 에러가 생겼다
Cause: java.sql.SQLException: ORA-01659: 7 을(를) 넘어서 테이블스페이스 TS_MM_DATA01에 MINEXTENTS를 할당할 수 없습니다
이게 뭔가 했더니 테이블스페이스에 용량이 적을 때 생긴다고 한다
oracle 접속
$ sqlplus / as sysdba
sysdba로 안들어가고 그냥 일반 유저에서 테이블 찾았더니 아무것도 안떴다
이런 DB 관련은 모두 sysdba에 할당되어있다
테이블 스페이스 정보 확인
SELECT A.TABLESPACE_NAME AS "테이블스페이스명",
A.FILE_NAME AS "파일경로",
A.BYTES/1024/1024/1024 AS "총크기",
(A.BYTES - B.FREE)/1024/1024/1024 AS "사용공간",
B.FREE/1024/1024/1024 AS "여유 공간",
TO_CHAR( (B.FREE / A.BYTES * 100) , '999.99')||'%' AS "여유공간"
FROM
(
SELECT FILE_ID,
TABLESPACE_NAME,
FILE_NAME,
SUBSTR(FILE_NAME,1,200) AS FILE_NM,
SUM(BYTES) BYTES
FROM DBA_DATA_FILES
GROUP BY FILE_ID,TABLESPACE_NAME,FILE_NAME,SUBSTR(FILE_NAME,1,200)
) A,
(
SELECT TABLESPACE_NAME,
FILE_ID,
SUM(NVL(BYTES,0)) AS FREE
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME,FILE_ID
) B
WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME
AND A.FILE_ID = B.FILE_ID
ORDER BY A.TABLESPACE_NAME;
고대로 붙여넣었더니 TS_MM_DATA01은 여유공간이 0.53% 남았다
그래서 할당 할 수 없다고 한다
그럼 여유공간을 할당해주기
1. 여유공간 할당 + 자동증가
ALTER TABLESPACE TS_MM_DATA01 add datafile '{DATA_FILE_이름}' SIZE 100M AUTOEXTEND ON NEXT {SIZE} MAXSIZE {MAX_SIZE}
ALTER TABLESPACE TS_MM_DATA01 add datafile '/data/ts_mm_data01_02.dtf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 5G
자동증가를 하지 않으려면 AUTOEXTEND 부분부터 지우면 된다
2. 여유공간 할당이 되어있을 때 자동증가시키기
자동증가 여부 확인
SELECT TABLESPACE_NAME, AUTOEXTENSIBLE, FILE_NAME FROM DBA_DATA_FILES;
자동증가로 변경
ALTER DATABASE DATAFILE '/data/ts_mm_data01_02.dbf' AUTOEXTEND ON NEXT 100M MAXSIZE 5G;
728x90
반응형
Comments