mysql 인덱스 걸때 어떤 컬럼을 선택하는것이 좋은가요? > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

mysql 인덱스 걸때 어떤 컬럼을 선택하는것이 좋은가요? 정보

mysql 인덱스 걸때 어떤 컬럼을 선택하는것이 좋은가요?

본문

막상 인덱스를 걸려고 보니
어떤컬럼에 인덱스를 거는것이 속도향상이 좋을지 잘 모르겠네요
예들어 select 대상이 자주되는 컬럼에다가 거는것이 좋은건지
아님 where이하 조건문에 자주 등장하는 컬럼에 걸어주는것이 더 낳은지...
것도 아니면 자주쓰는 테이블의 컬럼대부분을 인덱스를 모조리 걸어주면 어떨까하는생각도 드네요

고수님들 멋진 답변 기다립니다^^

댓글 전체

select문에서 where뒤에 들어가는 컬럼이 많은거로 걸면 됩니다.
예를 들면

select *from $write_table where wr_id = '$wr_id' AND title = '$title'이런식으로되어 있다면,

wr_id, title이렇게 두개를 묶어 걸면 효과적입니다.

가장 사용이 많이 되는 select query가 무엇인지 미리 통계를 내셔도 되고

index를 걸기 위해서는 그누보드에 들어간 쿼리를 하나하나 조사하시면서 index를 걸면 될 거 같습니다.
인덱스는 해당 테이블의 레코드의 값중 10%이하로 있는데이터를 기준으로 잡아주시면 좋습니다

삭제나 업데이트를 위한 기본키인 id값과 검색용도인 index값정도로 잡아주시면 될꺼같습니다.

조건문을 모두 걸필요는 없으며 가장 많은 걸 찾아낼수있으면 됩니다.

위에 하군님이 이야기 해주시는것중 딴지는 아니나

[wr_id, title이렇게 두개를 묶어 걸면 효과적입니다. ] 이부분은 아닙니다.

title 은 인덱스로 좋지도 않을 뿐더러 wr_id가 이미 기본키이며 고유키 이기때문에 레코드중 하나밖에 없다는 이야기 입니다. wr_id에만 pk로 걸려있으면 됩니다.
전체 66,558 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT