DataBase > Oracle/Tibero

oracle/tibero/MySQL/MariaDB DB(table) 용량 추출

#oracle,#tibero,#용량,#size,#크기

테이블별로 용량확인하기

실행시 $BIN... 과 같은 테이블명(segment_name)이 존재해 보기 불편하면 >>>클릭!  휴지통비우기를 실행

모든 사용자의 용량확인하기 (system or dba 유저로 접속)

select owner, segment_name, bytes/1024/1024 as mega_byte from dba_segments where segment_type='TABLE';

접속한 사용자의 용량확인하기

select segment_name, bytes/1024/1024 as mega_byte from user_segments where segment_type='TABLE';

TABLE 별 용량(사이즈 SIZE)

SELECT
    TABLE_NAME,
    NUM_ROWS,
    NUM_ROWS*AVG_ROW_LEN,
    round(((NUM_ROWS*AVG_ROW_LEN) / 1024 / 1024), 2) "사이즈(MB)",
    round(((NUM_ROWS*AVG_ROW_LEN) / 1024 / 1024 / 1024), 2) "사이즈(GB)",
    LAST_ANALYZED
FROM USER_TABLES
WHERE TABLE_NAME='TABLE NAME';

 

 

MySQL / MariaDB

데이터베이스별 용량확인

SELECT table_schema "Database", ROUND(SUM(data_length+index_length)/1024/1024,1) "MB" FROM information_schema.TABLES GROUP BY 1;

테이블별 용량

SELECT
     TABLE_NAME AS "Tables"
    ,round(((data_length + index_length) / 1024 / 1024), 2) "사이즈(MB)"
FROM information_schema.TABLES
WHERE table_schema = "데이터베이스명 입력"
ORDER BY (data_length + index_length) DESC;

테이블별로 레코드수/용량/인덱스용량

SELECT
     TABLE_NAME
    ,TABLE_ROWS as '레코드수'
    ,round(DATA_LENGTH/(1024*1024),2) as '테이블(MB)'
    ,round(INDEX_LENGTH/(1024*1024),2) as '인덱스(MB)'
 FROM INFORMATION_SCHEMA.TABLES
 WHERE TABLE_SCHEMA = '데이터베이스명 입력' 
 GROUP BY TABLE_NAME 
 ORDER BY DATA_LENGTH DESC ;