카테고리 없음
[MySQL] DB/Table/Column 용량 확인
초이화영
2024. 2. 27. 13:38
DB 용량 확인
SELECT table_schema AS 'DATABASE', ROUND(SUM(data_length+index_length)/(1024*1024), 2) AS 'Size(MB)'
FROM information_schema.tables
WHERE TABLE_SCHEMA not in ('sys', 'mysql', 'information_schema','performance_shcema')
GROUP BY table_schema
ORDER BY 2 DESC;
Table 별 용량 확인
SELECT table_name as 'TableName', ROUND(SUM(data_length+index_length)/(1024*1024), 2) AS 'All(MB)',
ROUND(SUM(data_length)/(1024*1024), 2) AS 'DATA(MB)', ROUND(SUM(index_length)/(1024*1024), 2) AS 'Index(MB)'
FROM information_schema.tables
WHERE TABLE_SCHEMA not in ('sys', 'mysql', 'information_schema','performance_shcema')
GROUP BY table_name
ORDER BY 2 DESC;
Column 별 용량 확인
SELECT ROUND(sum(LENGTH(컬럼명))/1024/1024, 2) AS 'total_size(MB)'
FROM 테이블명;
** 참고 **
select char_length(컬럼명) from 테이블명; => 글자수
select length(컬럼명) from 테이블명; => byte수
information_schema.TABLES 필드 정리
| Field | Type | 설명 |
| TABLE_CATALOG | VARCHAR(64) | 스키마가 속한 카탈로그 이름 |
| TABLE_SCHEMA | VARCHAR(64) | DB 스키마 이름 |
| TABLE_NAME | VARCHAR | Table 이름 |
| TABLE_TYPE | ENUM('BASE TABLE', 'VIEW', 'SYSTEM VIEW') | BASE TABLE: 표준테이블 VIEW: 뷰 테이블 SYSTEM VIEW: 시스템 관련 뷰 |
| ENGINE | VARCHAR(64) | 테이블 스토리 엔진 |
| VERSION | INT | 테이블 .frm 파일 버전 |
| ROW_FORMAT | enum('Fixed','Dynamic','Compressed','Redundant','Compact','Paged') | 행 저장 형식 InnoDB 기본은 Dynamic(동적) |
| TABLE_ROWS | BIGINT UNSIGNED | 행 수 |
| AVG_ROW_LENGTH | BIGINT UNSIGNED | 평균 행 길이 |
| DATA_LENGTH | BIGINT UNSIGNED | 데이터 파일 크기(바이트) |
| MAX_DATA_LENGTH | BIGINT UNSIGNED | 데이터 파일의 최대 길이 |
| INDEX_LENGTH | BIGINT UNSIGNED | 인덱스 파일 크기 |
| DATA_FREE | BIGINT UNSIGNED | 할당되었지만 사용되지 않은 바이트 수 |
| AUTO_INCREMENT | BIGINT UNSIGNED | 다음 AUTO_INCREMENT 값 |
| CREATE_TIME | TIMESTAMP | 생성 날짜 |
| UPDATE_TIME | DATETIME | 마지막 업데이트된 날짜 |
| CHECK_TIME | DATETIME | 마지막으로 확인된 시간 분할된 InnoDB 테이블 경우 항상 NULL |
| TABLE_COLLATION | VARCHAR(64) | 테이블 데이터 관련 문자 인코딩 정보 |
| CHECKSUM | BIGINT | 라이브 체크썸으로 데이터의 무결성을 보호하는 방법 |
| CREATE_OPTIONS | VARCHAR(64) | CREATE TABLE과 함께 사용되는 추가 옵션 |
| TABLE_COMMENT | TEXT | 테이블 생성시 사용된 코멘트 |
참고
[mysql] DB Table 데이터 크기 확인하기 및 TABLES 필드 설명
Mysql에서 table에 쌓인 데이터 크기를 알고 싶은 경우 information_schema를 이용하면 알 수 있다 SELECT table_name, -- 테이블 명 table_rows, -- 전체 row 수 data_length, -- 저장된 데이터 크기 (Bytes) round(data_length/ta
gogo-jjm.tistory.com
[MySQL] DB 용량 확인, 테이블별 용량 확인
ㅁ 들어가면서 MySQL의 용량을 분석하기 위한 쿼리를 정리하였습니다. update... 댓글의 질문 때문에 확인한 결과, 테이블이 뷰인 경유 용량과 건수는 null로 나타난다. ㅁ 데이터베이스 용량 확인 SEL
peterica.tistory.com