mysql 일반적인 최적화 팁
요즘 근무하는 회사 사이트가 로딩 속도가 무지 느려서...
쿼리 때문인것 같아 열심히 최적화 중이에요.
그러면서 이것 저것 검색을 하는데..
좋은 것이 있어서.. 공유하려고 해요
========================================================
디자인 최적화
- 열에 들어가는 데이터 형을 최소화 해야한다.
- 가급적 열에 NULL을 저장하지 않도록한다.
- 기본키는 가능한 짧아야 한다
- 열의 길이 역시 임의의 길이가 되지 않도록 한다 ex)varchar, text, blob는 임의의 길이를 허용하는 데이터 형이다.
퍼미션
- 쿼리를 실행하기 전에 퍼미션 시스템에서 권한을 검사한다. 이 과정을 간단하게 만들소록 쿼리의 속도는 빨라진다.
테이블 최적화
업데이트와 삭제가 빈번하면, 단편화되면서 데이터를 찾는데 시간이 많이 걸린다. 그럴때는 myisamchk -r table을 실행하자
myisamchk 유틸리티를 사용해서 테이블의 인덱스를 정렬하고 인덱스에 맞게 데이터를 재배치 할 수 있다.
myisamchk --srot-index --sort-records=1 pathtomysqldatadirectory/*/*.MYI
기본값 사용하기
필요하면 열에 기본값을 사용하고 NULL이 저장되지 않도록 하고, 기본값과 다른 값을 넣을 때에만 INSERT문에 명시하도록 한다.
그러면 INSERT문을 실행하는 시간이 줄어든다.
게시글 목록
| 번호 | 제목 |
|---|---|
| 12181 | |
| 12180 | |
| 12179 | |
| 348 | |
| 12178 | |
| 12177 |
PHP
php환경 변수 출력 입니다.
|
| 12176 |
PHP
PHP팁 (보안 등) 입니다.
|
| 12175 |
PHP
문자열 자르는 함수 입니다.
|
| 12174 | |
| 12173 | |
| 12161 |
정규표현식
파싱 예제입니다.
11
|
| 12160 | |
| 12159 | |
| 12158 | |
| 12157 | |
| 12156 | |
| 12155 | |
| 12154 |
JavaScript
지난 시간 경과시간 페이스북 sns 처럼 보여주기 javascript 버전
|
| 12151 | |
| 12150 |
PHP
php환경맞춤 부분 입니다.
|
| 12149 | |
| 12148 | |
| 12147 | |
| 12146 | |
| 12144 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기