[MySQL - 테이블 단편화 optimize/analyze table 정리]
※ analyze table 1. optimizer가 사용하는 통계정보의 갱신처리입니다. 2. InnoDB에서는 자발(자동)적으로 통계 정보를 갱신하기 때문에 크게 필요없다고 합니다. MyISAM의 경우는 카디날리티가 정확하게 갱신되어 있지만 InnoDB는 아주 부정확하고 analyze table을 실행하면 빈번이 값이 바뀐다. InnoDB의 경우 자동으로 갱신되는 조건은 아래와 같다. - 전에 인덱스 통계정보를 갱신한후 테이블의 전체행수의1/16이 갱신된경우 - 전에 인덱스 통계정보를 갱신한후 20억행이상이 갱신된경우 3. analyze table은 랜덤으로 페이지를 8회추출해서 그 페이지내에 포함된 행 데이타를 조사해서 인덱스의 통계정보를 근사치로 갱신한다. 근사치이지만 옵티마이저가 사용하기 위한 통..