No img

인덱스를 사용하는 이유는 특정 칼럼 값을 가지고 있는 열을 빠르게 찾기 위해서 사용된다.

MySQL은 첫 번째 열부터 전체 테이블에 걸쳐서 검색을 하기 때문에 테이블이 클 수록 검색 시간이 오래걸린다.

하지만 만약 인덱스를 가지고 있다면, 모든 데이터를 조사하지 않고도 데이터 파일의 중간에서 검색위치를 빠르게 잡아낼 수 있다.

 

 

즉, 나의 경우에는 빠른 검색을 위해(데이터 양이 많고 검색이 빈번한 경우) 인덱스를 사용한다.

 

기존의 테이블에 인덱스를 추가하기

mysql> ALTER TABLE 테이블이름 ADD INDEX(필드명(크기));

-> 필드가 string일 경우 필드명(크기)를 해준다. 즉, 필드가 int일 경우 필드명만 해줘도 된다.

 

 

테이블 생성시 인덱스 추가

mysql> CREATE TABLE 테이블이름(
	-> 변수명 변수타입(크기),
    -> 변수명2 변수타입(크기)
    -> INDEX(변수명)
    );

-> 인덱스를 추가할 경우 테이블 생성 시에 인덱스의 정보도 생성하기 때문에 생성 속도는 느려진다.

 

'CS > DataBase' 카테고리의 다른 글

MySQL 덤프(dump)  (0) 2019.08.14
mysql csv 파일 import  (0) 2019.08.13