본문 바로가기
ORA DBDATA

ORA DBDATA

Oracle 테이블에서 DELETE 후에도 HWM 아래 블록이 남아 FULL SCAN이 같은 블록 수를 읽고, SHRINK와 MOVE 후 줄어드는 과정을 비교한 이미지

DELETE로 90%를 지웠는데 FULL SCAN은 왜 6,069블록을 그대로 읽을까: HWM과 SHRINK·MOVE 비교

20만 건일 때도 2만 건일 때도 FULL SCAN은 6,069블록을 읽었습니다 로그인 이력 200,000건을 FULL SCAN했을 때 Buffers는 6,069였습니다. 보관 기…

Oracle NOT IN 서브쿼리에 NULL이 섞이면서 발송 대상 결과가 0건으로 바뀌는 과정을 실행계획과 함께 비교한 이미지

NOT IN 서브쿼리에 NULL 한 건이 들어오자 48,000건이 0건으로: ANTI NA 실행계획 추적

수신 거부 1건이 추가되자 발송 대상이 0건이 되었습니다 아래 SQL은 수신 거부 기록이 없는 회원을 발송 대상으로 고르는 쿼리입니다. Oracle 21c XE에서 회원 50,00…

A, B, C 세 세션이 자식 테이블의 TM 락을 두고 서로 기다리는 관계를 화살표로 나타낸 대표 이미지입니다.

외래키 인덱스가 없을 때 부모 DELETE 한 건이 만든 대기 체인: V$LOCK으로 본 TM 락 모드

자식이 하나도 없는 가맹점을 지우려다 멈춘 세션 세 세션이 같은 시간에 움직였습니다. B와 C는 둘 다 멈췄습니다. A가 건드린 행과도, B가 지우려는 가맹점과도 관계없는 C까지 …

적재 순서만 다른 두 테이블이 같은 Cost 56에서 논리 읽기는 57과 3,008로 갈리는 모습을 비교한 대표 이미지입니다.

같은 데이터, 다른 적재 순서: 클러스터링 팩터가 Cost와 Buffers를 각각 어떻게 바꿨나

Cost 56인 실행계획 두 개, Buffers는 57과 3,008 같은 30만 행을 담은 테이블 두 개에 같은 범위 조회를 실행했습니다. 두 실행계획은 모두 인덱스 범위 스캔이었…

VARCHAR2(10) 컬럼에 한글 네 글자 12바이트가 들어가지 못하고 2바이트가 넘치는 모습을 나타낸 대표 이미지입니다.

VARCHAR2(10)에 한글 네 글자가 안 들어가는 이유: ORA-12899를 바이트 단위로 확인한 결과

ORA-12899: 실제 12, 최대값 10 네 글자를 넣었는데 Oracle은 12라고 계산했습니다. 컬럼은 VARCHAR2(10)이었고, 이 컬럼의 10은 글자 수가 아니라 바이…

같은 20만 건 테이블을 DELETE와 TRUNCATE로 비웠을 때 생성된 Redo와 Undo 양을 비교한 Oracle 실험 대표 이미지입니다.

전체 DELETE와 TRUNCATE의 Redo·Undo 실측: 395배 차이가 인덱스 2개에 727배가 된 이유

33,338,892바이트와 84,384바이트 같은 20만 건 테이블을 두 가지 방법으로 비웠습니다. 한 번은 DELETE FROM noti_log; 뒤에 COMMIT을 했고, 한 …

세 세션이 한 줄로 막힌 Oracle 차단 체인에서 최종 차단 세션을 찾아가는 과정을 표현한 이미지입니다.

BLOCKING_SESSION만 보면 엉뚱한 세션을 정리합니다: Oracle 차단 체인에서 원인 세션 찾는 SQL

세션 C의 BLOCKING_SESSION은 2424, FINAL_BLOCKING_SESSION은 2181이었습니다. 같은 V$SESSION 한 행에서 두 컬럼이 서로 다른 세션을 …

VARCHAR2 컬럼을 숫자 12345로 비교하면 TABLE ACCESS FULL로 Buffers 1,599, 문자 ‘0000012345’로 비교하면 INDEX RANGE SCAN으로 Buffers 9인 실행 결과 비교 이미지

VARCHAR2 컬럼을 숫자로 비교하면 인덱스가 사라지는 이유: Oracle 21c XE 실행계획 검증

Oracle 21c XE에서 VARCHAR2 컬럼을 숫자와 비교하자 TO_NUMBER가 컬럼에 적용되어 Full Scan으로 1,599블록을 읽었습니다. 문자 비교는 9블록이었습니…

Oracle SQL 실행계획 분석을 표현한 모니터와 DBA 작업 공간

GATHER_PLAN_STATISTICS 힌트를 넣었는데도 A-Rows가 안 보이는 이유

DBMS_XPLAN.DISPLAY_CURSOR로 실행계획을 열었는데 E-Rows만 있고 A-Rows와 Buffers 열이 없는 경우가 있습니다. 실제로 몇 행을 처리했고 블록을 얼…

광고 차단 알림

광고 클릭 제한을 초과하여 광고가 차단되었습니다.

단시간에 반복적인 광고 클릭은 시스템에 의해 감지되며, IP가 수집되어 사이트 관리자가 확인 가능합니다.