> 데이터 베이스 > MySQL 튜토리얼 > MySQL에서 일반적으로 사용되는 스토리지 엔진은 무엇입니까?

MySQL에서 일반적으로 사용되는 스토리지 엔진은 무엇입니까?

清浅
풀어 주다: 2020-09-15 14:09:34
원래의
28962명이 탐색했습니다.

MySql의 스토리지 엔진은 1. MyISAM 엔진, 2. MyISAM 병합 엔진, 4. 메모리 엔진, 5. 아카이브 엔진입니다.

MySQL에서 일반적으로 사용되는 스토리지 엔진은 무엇입니까?

MySql의 스토리지 엔진

1. MyISAM 엔진

이 엔진은 mysql에서 제공하는 최초의 엔진입니다. 이 엔진은 정적 MyISAM, 동적 MyISAM 및 압축 MyISAM의 세 가지 유형으로 나눌 수 있습니다.

(1) 정적 MyISAM: 데이터 테이블의 각 데이터 열 길이가 미리 고정되어 있으면 서버가 자동으로 이 테이블 유형을 선택합니다. 데이터 테이블의 각 레코드는 동일한 공간을 차지하므로 테이블 액세스 및 업데이트 효율성이 매우 높습니다. 데이터가 손상된 경우 복구가 더 쉽습니다.

(2) 동적 MyISAM: varchar, xxxtext 또는 xxxBLOB 필드가 데이터 테이블에 나타나면 서버가 자동으로 이 테이블 유형을 선택합니다. 정적 MyISAM에 비해 이러한 종류의 테이블의 저장 공간은 상대적으로 작지만 각 레코드의 길이가 다르기 때문에 데이터가 여러 번 수정된 후에는 데이터 테이블의 데이터가 메모리에 개별적으로 저장될 수 있습니다. 결과적으로 실행 효율성이 감소합니다. 동시에 메모리에 많은 조각화가 있을 수도 있습니다. 따라서 이러한 유형의 테이블은 최적화 테이블 명령이나 최적화 도구를 사용하여 조각 모음을 수행해야 하는 경우가 많습니다.

(3) MyISAM 압축: 위에서 언급한 두 가지 유형의 테이블 모두 myisamchk 도구를 사용하여 압축할 수 있습니다. 이 유형의 테이블은 스토리지 공간을 더욱 줄이지만 압축 후에는 이 유형의 테이블을 수정할 수 없습니다. 또한, 이런 종류의 테이블은 압축된 데이터이기 때문에 읽을 때 먼저 압축을 풀어야 합니다.

그러나 MyISAM 테이블의 종류에 관계없이 현재는 트랜잭션, 행 수준 잠금 및 외래 키 제약 조건을 지원하지 않습니다.

2. MyISAM 병합 엔진

이 유형은 MyISAM 유형의 변형입니다. 테이블 병합은 여러 개의 동일한 MyISAM 테이블을 가상 테이블로 병합하는 것입니다. 로그 및 데이터 웨어하우스에 일반적으로 사용됩니다.

3. InnoDB 엔진

InnoDB 테이블 유형은 트랜잭션, 행 수준 잠금 메커니즘 및 외래 키 제약 조건 기능을 제공하는 MyISAM의 추가 업데이트 제품으로 볼 수 있습니다.

4. 메모리(힙) 엔진

이런 유형의 데이터 테이블은 메모리에만 존재합니다. 해시 인덱스를 사용하므로 데이터 액세스가 매우 빠릅니다. 이 유형은 메모리에 존재하므로 임시 테이블에서 자주 사용됩니다.

5. 아카이브 엔진

이 유형은 선택 및 삽입 문만 지원하며 인덱스는 지원하지 않습니다. 로깅 및 집계 분석에 자주 사용됩니다.

위 내용은 MySQL에서 일반적으로 사용되는 스토리지 엔진은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿