개요
Tibero에서 오브젝트를 삭제하면 sys._dd_obj 목록에서 제거되며, 해당 정보는 _dd_dropped_sgmt 테이블에서 확인할 수 있습니다.
일정 시간이 지나 _dd_dropped_sgmt에서도 제거되면, 해당 오브젝트는 데이터 파일에서 완전히 삭제됩니다. 이는 대용량 데이터를 삭제할 경우, 세그먼트 할당 회수 과정에서 서비스 지연이 발생할 수 있기 때문에, 바로 제거되지 않고 _dd_dropped_sgmt 목록에 등록되는 방식입니다.
오브젝트 스키마 확인
_DD_OBJ와 _DD_DROPPED_SGMT 테이블의 구조를 조회합니다.
SQL> desc _DD_OBJ
COLUMN_NAME TYPE CONSTRAINT
---------------------------------------- ------------------ --------------------
OBJ_ID NUMBER
OWNER_ID NUMBER
NAME VARCHAR(128)
SUBNAME VARCHAR(128)
BO_ID NUMBER
TYPE_NO NUMBER
FLAGS NUMBER
CTIME DATE
MTIME DATE
STIME DATE
RESERVED1 NUMBER
RESERVED2 NUMBER
RESERVED3 NUMBER
RESERVED4 VARCHAR(4000)
INDEX_NAME TYPE COLUMN_NAME
-------------------------------- ------------------------ ----------------------
_DD_OBJ_IDX1 NORMAL OBJ_ID
_DD_OBJ_IDX2 NORMAL OWNER_ID
NAME
SUBNAME
OBJ_ID
_DD_OBJ_IDX3 NORMAL BO_ID
TYPE_NO
OBJ_ID
SQL> desc _DD_DROPPED_SGMT
COLUMN_NAME TYPE CONSTRAINT
---------------------------------------- ------------------ --------------------
SESSID NUMBER
SGMT_ID NUMBER
TS_ID NUMBER
SHDRDBA NUMBER
FLAGS NUMBER
INDEX_NAME TYPE COLUMN_NAME
-------------------------------- ------------------------ ----------------------
_DD_DROPPED_SGMT_IDX1 NORMAL SGMT_ID
_DD_DROPPED_SGMT_IDX2 NORMAL TS_ID
_DD_DROPPED_SGMT_IDX3 NORMAL SESSID
SQL
복사
방법
Object 생성 테스트 절차
테이블 생성
SQL> create table A(A) as select level from dual connect by level<100000;
Table 'A' created.
SQL
복사
sys._dd_obj, sys._dd_dropped_sgmt 확인
SQL> select * from sys._dd_obj where NAME='A';
OBJ_ID OWNER_ID
---------- ----------
NAME
--------------------------------------------------------------------------------
SUBNAME
--------------------------------------------------------------------------------
BO_ID TYPE_NO FLAGS
---------- ---------- ----------
CTIME
--------------------------------------------------------------------------------
MTIME
--------------------------------------------------------------------------------
STIME
--------------------------------------------------------------------------------
RESERVED1 RESERVED2 RESERVED3
---------- ---------- ----------
RESERVED4
--------------------------------------------------------------------------------
4020 18
A
4294967295 1 0
2025/02/18
2025/02/18
2025/02/18
0 0 0
1 row selected.
SQL> select * from sys._dd_dropped_sgmt;
0 row selected.
SQL
복사
tibero 계정에 테이블 삭제 후 내용 확인
•
A 테이블 삭제
SQL> drop table A;
Table 'A' dropped.
SQL
복사
•
_dd_obj에서 데이터 확인
SQL> select * from sys._dd_obj where NAME='A';
0 row selected.
SQL
복사
•
_dd_dropped_sgmt
SQL> select * from sys._dd_dropped_sgmt;
SESSID SGMT_ID TS_ID SHDRDBA FLAGS
---------- ---------- ---------- ---------- ----------
91 4020 3 8388681 1
1 row selected.
SQL
복사
•
일정 시간이 지난 후 _dd_dropped_sgmt 테이블에서도 데이터 삭제 확인
SQL> select * from sys._dd_dropped_sgmt;
0 row selected.
SQL
복사