mysql 일반적인 최적화 팁

· 2015-09-23 (수) 22:14:47 · 614

요즘 근무하는 회사 사이트가 로딩 속도가 무지 느려서... 

쿼리 때문인것 같아 열심히 최적화 중이에요. 

그러면서 이것 저것 검색을 하는데..

좋은 것이 있어서.. 공유하려고 해요

 

========================================================

 

디자인 최적화

  • 열에 들어가는 데이터 형을 최소화 해야한다.
  • 가급적 열에 NULL을 저장하지 않도록한다.
  • 기본키는 가능한 짧아야 한다
  • 열의 길이 역시 임의의 길이가 되지 않도록 한다 ex)varchar, text, blob는 임의의 길이를 허용하는 데이터 형이다.

 

퍼미션

  • 쿼리를 실행하기 전에 퍼미션 시스템에서 권한을 검사한다. 이 과정을 간단하게 만들소록 쿼리의 속도는 빨라진다.

 

테이블 최적화

업데이트와 삭제가 빈번하면, 단편화되면서 데이터를 찾는데 시간이 많이 걸린다. 그럴때는 myisamchk -r table을 실행하자

myisamchk 유틸리티를 사용해서 테이블의 인덱스를 정렬하고 인덱스에 맞게 데이터를 재배치 할 수 있다.

myisamchk --srot-index --sort-records=1 pathtomysqldatadirectory/*/*.MYI

기본값 사용하기

필요하면 열에 기본값을 사용하고 NULL이 저장되지 않도록 하고, 기본값과 다른 값을 넣을 때에만 INSERT문에 명시하도록 한다.

그러면 INSERT문을 실행하는 시간이 줄어든다.​

|
댓글을 작성하시려면 로그인이 필요합니다.

팁게시판

6,077건

디자인과 관련된 유용한 정보를 공유하세요. 질문은 상단의 QA에서 해주시기 바랍니다.

+
제목 글쓴이 날짜 조회
15-09-24 조회 622
15-09-24 조회 988
15-09-23 조회 700
15-09-23 조회 615
15-09-23 조회 678
15-09-23 조회 609
15-09-23 조회 646
15-09-23 조회 626
15-09-22 조회 2,512
15-09-21 조회 804
15-09-21 조회 548
15-09-21 조회 594
15-09-21 조회 626
15-08-28 조회 2,161
15-08-06 조회 1,315
15-08-03 조회 1,182
15-08-03 조회 2,138
15-08-03 조회 1,380
15-07-30 조회 1,136
15-07-29 조회 990
15-07-29 조회 797
15-07-22 조회 1,422
15-07-12 조회 1,153
15-07-07 조회 1,642
15-07-02 조회 1,075