jc01rho의 일상잡다

MYSQL 테이블 최적화검사 본문

컴퓨터/PHP & MYSQL & 웹

MYSQL 테이블 최적화검사

jc01rho 2012. 6. 1. 14:24

DB를 사용하면서 Table을 만들고 데이터를 어느정도 쌓다보면 과연 제대로 테이블구성이 되어 있는지 궁금할때가 있다.

최적의 상태가 되려면 불필요하게 낭비되는 컬럼길이를 1byte 라도 줄여야 하기 때문이다.

이럴때 MySQL에서 제공하는 유용한 함수가 있다.

PROCEDURE ANALYSE()

사용법은 간단하다. 체크하려는 테이블 SELECT 문 마지막에 함수명만 넣어주면 끝.

예제))

SELECT * FROM CHCEK대상_TABLE명 PROCEDURE ANALYSE() ;

결과 )) 아래의 항목에 대해 값이 출력된다.

Field_name,Min_value,Max_value,Min_length,Max_length,Empties_or_zeros,

Nulls,Avg_value_or_avg_length,Std,Optimal_fieldtype

각 COLUMN별로 최대, 최소값, NULL, EMPTY, 0의 수, 권장추천 필트타입등을 보면서 테이블 COLUMN 구성을 변경하면 된다.

처음에 거창하게 설계하여 구성한 테이블이 얼마정도 사용하다보면 지정해 놓은 COLUMN의 길이가 쓸데없이 길었음을 알수 있다.

INT타입 같은 경우, 처음부터 10자리 잡지말고 데이터 증가에 따라서 길이를 변경해주는것이 좋다.

SMALLINT ==> MEDIUMINT ==> INT 등...으로

Comments