Database

mySQL 테이블 타입

컨텐츠 정보

본문

mySQL 테이블 타입



ISAM 타입
##########

말그대로 MYSQL 3.22버전까지의 테이블 타입입니다...

OS에 종속적이나 속도가 빠릅니다..

당연히 트랜잭션은 지원이 되지 않고..

테이블의 최대용량도 4GB까지입니다...

물론 리눅스 2.4커널미만에서는 2GB까지겠지요...

물론 데이터의 단편화가 생기기 쉬워서 안전성에도 문제가 있을 수 있습니다...



MyISAM 타입
#############

MYSQL 3.23버전의 기본 테이블 타입입니다..

당연히 3.23버전부터 지원하기 시작한 테이블 타입입니다... ISAM의 확장이라고 생각하면 됩니다...

OS가 지원하는 범위내에서 4GB이상의 테이블을 지원할 수 있습니다...

저번 내용에서 인덱스는 NULL컬럼은 불가라고 했습니다...

3.22버전까지는 NULL컬럼 및 text, blob형은 인덱스로 사용할 수가 없었지만...

3.23버전의 MyISAM타입은 인덱스로 사용할 수가 있습니다...



HEAP 타입
##########

빠릅니다... 하지만 MYSQL이 종료되는 시점에서 모든 데이터가 날라갑니다...

왜냐면 메모리가 저장공간이기 때문입니다...

저장 공간이 메모리 이므로 다른 하드디스크를 쓰는 테이블보다...

엑세스 타임이 무진 빠릅니다...

따라서...

임시 테이블이나 검색결과 테이블 등으로 활용한다면 무진 좋습니다...



BDB 타입
#########

MYSQL하면 속도입니다...

속도를 높이기 위해서 3.22버전까지는 기본적으로 트랜잭션을 지원하지 않았습니다...

하지만 기능의 미비로 많은 불편한 점이 있었던것도 사실입니다...

이 테이블 타입은 트랜잭션을 지원합니다...

프라이머리키가 꼭 필요하며... 테이블을 alter를 사용해 변경할 수가 없습니다...

당연히 속도가 느립니다...

BDB를 설치하기 위해선...

MYSQL을 바이너리로 설치하면 자동으로 설치가 되지만...

소스 코드로 설치를 하셨다면.... 따로 버클리 DB를 설치하셔야 합니다...

http://www.mysql.com/downloads/mysql-3.23.htm 에서 다운받으실 수 있구요..

MySQL 3.23.34부터는 BDB역시 소스안데 기본적으로 포함되어 있습니다.

소스 설치시 --with-berkeley-db 옵션을 주셔야 합니다.

관련자료

댓글 0
등록된 댓글이 없습니다.
Today's proverb
생각은 자유롭고 독립적인 듯 보이지만 인간은 생각보다 더 강한 것을 가지고 있다. 그것은 생각을 인도할 수 있는 능력이다.