레이블이 Index인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Index인 게시물을 표시합니다. 모든 게시물 표시

2011년 9월 15일 목요일

[MySql] 쿼리 속도 최적화

인덱스 선택시 고려할 점

  • 검색, 정렬 또는 그룹 만들기 등에 사용되는 칼럼을 인덱스로 만들고 ,출력으로 표시되는 칼럼에 대해서는 인덱스로 만들지 않는다.
  • 유일한 인덱스를 사용
  • 짧은 데이터 타입으로 인덱스 생성
  • 문자열로된 인덱스 접두어
  • 가장 왼쪽의 접두어를 활용
  • 과도한 인덱스 생성 금지
  • 인덱스 타입과 비교 수행 시의 타입의 매치
  • 느린 쿼리 로그를 사용하여 좋지 않은 수행력을 보여주는 쿼리들을 식별한다.

2011년 9월 13일 화요일

[MySql] 인덱스추가

인덱스의 추가(ALTER TABLE)
  ALTER TABLE tblname ADD INDEX indexname (index_columns);
  ALTER TABLE tblname ADD PRIMARY KEY indexname (index_columns);
  ALTER TABLE tblname ADD UNIQUE indexname (index_columns);

인덱스의 추가(CREATE INDEX)
  CREATE INDEX indexname ON tblname (index_columns);
  CREATE UNIQUE INDEX indexname ON tblname (index_columns);
  CREATE PRIMARY KEY indexname ON tblname (index_columns);


인덱스의 추가(CREATE TABLE)
  CREATE TABLE tblname
  (
    i INT NOT NULL PRIMARY KEY,
    sz CHAR(10) NOUT NULL UNIQUE
  );

인덱스의 삭제
  DROP INDEX indexname ON tblname;
  DROP INDEX 'PRIMARY' ON tblname; (PRIMARY KEY 삭제)
  ALTER TABLE tblname DROP INDEX indexname;
  ALTER TABLE tblname DROP PRIMARY KEY;