이 블로그 게시물은 주로 MyISAM과 InnoDB의 차이점을 요약합니다.
InnoDB와 MyISAM은 MySQL을 사용할 때 가장 일반적으로 사용되는 두 가지 테이블 유형입니다. 두 테이블 유형 모두 특정 응용 프로그램에 따라 고유한 장점과 단점이 있습니다. 기본적인 차이점은 다음과 같습니다.
(1) MyISAM 유형은 트랜잭션 처리 등 고급 처리를 지원하지 않지만 InnoDB 유형은 트랜잭션을 지원합니다.
(2) InnoDB는 데이터 행 잠금을 지원합니다. MyISAM은 행 잠금을 지원하지 않고 전체 테이블 잠금만 지원합니다. InnoDB 테이블의 행 잠금은 절대적이지 않다는 점에 유의해야 합니다. MySQL이 SQL 문을 실행할 때 스캔할 범위를 결정할 수 없는 경우 InnoDB 테이블은 전체 테이블도 잠급니다(예: update table set num=). 1 “% aaa%”와 같은 이름
(3) InnoDB는 외래 키를 지원하지만 MyISAM은 지원하지 않습니다.
(4) InnoDB는 테이블의 특정 행 수를 저장하지 않습니다. 즉, 테이블에서 select count()를 실행할 때 InnoDB는 테이블 전체를 스캔하여 몇 행을 계산해야 합니다. 행이 있습니다. 그러나 MyISAM은 저장된 행 수만 읽습니다. count() 문에 where 조건이 포함된 경우 두 테이블의 작업은 동일합니다.
위 내용은 고성능 MySQL - 스토리지 엔진 MyISAM과 InnoDB의 기본적인 차이점 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!