이전 장에서는 MySQL에서 CRUD를 사용하는 방법을 이미 설명했습니다. 이 장에서는 주로 MySQL 데이터베이스의 스토리지 엔진 분류를 이해할 수 있도록 몇 가지 기본 개념에 대해 설명합니다. 데이터란 무엇입니까? 언제든지 데이터를 확인하고 사용할 수 있도록 로컬에 저장하는 것이 좋습니다.
MySQL을 배우려면 설치 후 수행하도록 선택할 수 있습니다.
1. (스키마)의 모든 정보는 데이터 디렉터리에 저장됩니다. 데이터베이스가 생성될 때마다 실제로 디렉터리를 생성하는 것과 동일하며, 디렉터리의 파일 아래에 데이터베이스의 해당 테이블이 생성됩니다. .frm입니다.
여기서 주의할 점은 Windows에서는 경로가 대소문자를 구분하지 않지만 Unix와 Linux에서는 SHOW TABLE STATUS를 사용할 수 있다는 것입니다. LIKE 'acout'; 해당 테이블 정보를 봅니다.
이름: 테이블 이름
엔진: 이전 버전에서는 이 열의 이름이 Type입니다. Rows: 테이블의 행 수입니다. MyISAM 엔진에서는 이 데이터의 값이 정확하지만 InnoDB에서는 이 값이 추정치입니다.
Data_length: 테이블 데이터의 크기(단위: bytes) Auth_increment: 다음 AUTH_INCREMENT 값. Update_time: 테이블 데이터의 마지막 수정 시간 Comment: 테이블의 기타 정보 설명은 MyISAM 테이블의 주석을 저장합니다. , InnoDB 테이블인 경우 테이블스페이스의 남은 공간 정보가 저장됩니다. 뷰인 경우 해당 정보는 VIEW의 텍스트입니다. 기타는 하나씩 설명하지 않습니다. , 주로 검색 엔진을 사용합니다. 3. InnoDB 스토리지 엔진:InnoDB는 MySQL의 기본 트랜잭션 엔진이기도 하며 가장 중요하고 가장 일반적으로 사용되는 스토리지 엔진입니다. 많은 수의 단기 트랜잭션을 처리하기 위해 대부분의 경우 단기 트랜잭션은 정상적으로 제출되며, InnoDB의 특성상 다른 이유가 없는 한 일반적으로 InnoDB 엔진을 사용합니다.
InnoDB 데이터는 테이블스페이스(tablespace)에 저장됩니다.
InnoDB는 높은 동시성을 지원하기 위해 MVCC를 사용하며, 기본값은 REPEATABLE READ입니다. 스토리지 엔진에 대한 자세한 내용을 계속 학습하려면 공식 매뉴얼 "InnoDB 트랜잭션 모델 및 잠금"을 읽는 것이 좋습니다.
4. MyISAM 스토리지 엔진: MySQL5.1 및 이전 버전에서는 MyISAM MyISAM은 전체 텍스트 인덱스, 압축, 공간 기능 등을 포함한 많은 기능을 제공합니다. 그러나 MyISAM은 트랜잭션 및 행 수준 잠금을 지원하지 않으며 주요 결함이 있습니다. 크래시 이후에는 안전하게 복구가 불가능하지만, 데이터가 읽기 전용이거나 테이블이 상대적으로 작은 경우에는 엔진을 사용할 수 있지만 결국에는 기본적으로 InnoDB 스토리지 엔진을 사용하는 것이 가장 좋습니다. MyISAM에 저장된 두 개의 파일: 데이터 파일과 인덱스 파일(각각 .MYD 및 .MYI가 접미사임) MyISAM 기능: 잠금 및 동시성, 복구, 인덱스 기능은 테이블이 아니라 전체 파일에 적용됩니다. 읽기 시에는 읽은 모든 테이블을 공유 잠금으로 잠급니다. MyISAM은 테이블을 압축하고, 테이블 데이터를 가져오면 수정되지 않으므로 작업에 적합합니다. MyISAM 압축 테이블을 사용하세요.
5. 이 두 가지 엔진 외에도 다른 내장 엔진과 타사 엔진이 있는데 여기서는 간략하게만 소개하겠습니다.
엔진이 너무 많으니 어떻게 선택해야 할까요?
대부분의 경우에는 확실히 InnoDB가 올바른 선택입니다. 따라서 MySQL 5.5부터는 InnoDB가 기본 스토리지 엔진입니다. 간단한 문장입니다. InnoDB에서 사용할 수 없는 기능을 사용해야 하고 이를 대체할 다른 방법이 없다면
Notes
적합한 스토리지 엔진을 선택해야 합니다. 일반적인 문제를 피하려면 테스트 환경에서 실행하는 것이 가장 좋습니다.
학습에는 조금씩 축적과 발전이 필요합니다.
위 내용은 MySQL 스토리지 엔진 분류의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!