Notice
Recent Posts
Recent Comments
Link
160x600
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- HeidiSQL
- sklearn
- 오라클
- keras
- 데이터베이스
- Database
- sql
- 훈련
- pandas
- 정확도
- 머신러닝
- pythone
- DB
- 데이터전처리
- 데이터 수집
- 해석
- 회귀모델
- 파싱 오류
- Oracle
- 딥러닝
- python기초
- Deep Learning
- tensorflow
- 데이터 분석
- 데이터 가공
- 예측
- 시각화
- 데이터
- MariaDB
- python
Archives
- Today
- Total
코딩헤딩
오라클 데이터베이스 [ORA-00979, ORA-12801, ORA-01555] 오류 본문
728x90
성능 문제 / 실행 계획 / 튜닝 관련 오류
1. ORA-00979: not a GROUP BY expression
- 의미 : GROUP BY 절에 포함되지 않은 컬럼을 SELECT에서 사용했음
- 원인 : GROUP BY 없이 집계함수와 일반 컬럼을 혼용
SELECT department_id, COUNT(*), manager_id FROM employees GROUP BY department_id;
-- manager_id는 GROUP BY 대상이 아님
-- 해결 방법
SELECT department_id, COUNT(*), MAX(manager_id) FROM employees GROUP BY department_id;
-- 또는 manager_id도 GROUP BY에 추가
2. ORA-12801: error signaled in parallel query server
- 의미 : 병렬 쿼리 중 하나의 서버 프로세스에서 오류 발생
- 원인 : 병렬 쿼리 내부에서 다른 오류 발생 (ORA-01652, ORA-01555 등), 리소스 부족, TEMP 공간 부족 등
SELECT /*+ parallel(e 8) */ * FROM employees e;
-- 병렬 실행 중 서버 프로세스 하나가 실패
-- 해결 방법
-- 병렬 힌트 제거 또는 병렬도 낮추기
-- TEMP 테이블스페이스 확인 및 확장
-- alert log에서 진짜 원인(하위 오류코드) 확인
ALTER SESSION SET parallel_degree_policy = manual;
3. ORA-01555: snapshot too old
- 의미 : 쿼리 실행 중 이전 데이터를 참조하려 했지만 Undo에 존재하지 않음
- 원인 : 긴 실행 시간의 쿼리, Undo 공간 부족, 반복 스캔 시점 불일치
SELECT * FROM large_table WHERE ...
-- 쿼리가 너무 오래 걸려 Undo 데이터를 잃음
-- 해결 방법
-- 쿼리 튜닝 (인덱스 활용, 불필요한 조인 제거 등)
-- Undo retention 시간 늘리기 (DBA 권한)
ALTER SYSTEM SET undo_retention = 1800; -- 예: 30분
-- LOB 처리 시 PCTVERSION, RETENTION 옵션 조정
- 병렬 쿼리, 대용량 스캔, 정렬 작업 → TEMP & UNDO 사용량 많아짐
→ 항상 쿼리 실행계획 확인 (EXPLAIN PLAN or AUTOTRACE)
728x90
'데이터베이스 > ORACLE' 카테고리의 다른 글
오라클 데이터베이스 [ORA-00918, ORA-00933, ORA-01427] 오류 (0) | 2025.06.11 |
---|---|
오라클 데이터베이스 [ORA-01408, ORA-14024, ORA-01031] 오류 (0) | 2025.06.10 |
오라클 데이터베이스 [ORA-00955, ORA-00060, ORA-00907] 오류 (1) | 2025.06.06 |
오라클 데이터베이스 [ORA-00904, ORA-00060, ORA-00907] 오류 (0) | 2025.06.03 |
오라클 데이터베이스 [ORA-01843, ORA-00911, ORA-00907] 오류 (0) | 2025.06.03 |