IT story

MyISAM과 InnoDB의 차이점은 무엇입니까?

hot-time 2020. 4. 5. 20:37
반응형

MyISAM과 InnoDB의 차이점은 무엇입니까? [복제]


이 질문에는 이미 답변이 있습니다.

이 질문은 이전에 요청되었지만 대부분의 경우 특정 데이터베이스 또는 테이블과 관련하여 요청되는 것으로 알고 있습니다. 이 사이트에서 누군가의 특정 데이터베이스에 관계없이 두 엔진과 차이점을 설명하는 답변을 찾을 수 없습니다.

테이블이나 데이터베이스 디자인과 관련하여 앞으로 더 많은 정보에 근거한 결정을 내릴 수 있기를 원하므로 두 스토리지 엔진의 차이점에 대한 포괄적 인 답변을 찾고 있습니다.

MyISAMInnoDB 의 차이점은 무엇 이며 , 둘 중 하나를 결정할 때 무엇을 찾아야합니까?


InnoDB와 MyISAM의 주요 차이점 ( "요청한 테이블 또는 데이터베이스 디자인과 관련하여")은 "참조 무결성"및 "트랜잭션"에 대한 지원입니다.

외래 키 제약 조건을 적용하기 위해 데이터베이스가 필요하거나 트랜잭션을 지원하기 위해 데이터베이스가 필요한 경우 (예 : 모든 변경 사항이 적용되거나 모든 변경 사항이 되돌려 진 단일 작업 단위로 처리되는 둘 이상의 DML 작업에 의해 수행 된 변경 사항) 이러한 기능은 MyISAM 엔진에 없기 때문에 InnoDB 엔진을 선택합니다.

이것이 두 가지 가장 큰 차이점입니다. 또 다른 큰 차이점은 동시성입니다. MyISAM을 사용하면 DML 문은 테이블에 대한 독점 잠금을 획득하며 해당 잠금이 유지되는 동안 다른 세션은 테이블에서 SELECT 또는 DML 작업을 수행 할 수 없습니다.

요청한 두 가지 특정 엔진 (InnoDB 및 MyISAM)은 서로 다른 설계 목표를 가지고 있습니다. MySQL에는 자체 설계 목표를 가진 다른 스토리지 엔진도 있습니다.

따라서 InnoDB와 MyISAM 중에서 선택하는 첫 번째 단계는 InnoDB가 제공하는 기능이 필요한지 여부를 결정하는 것입니다. 그렇지 않다면, MyISAM이 고려 될 것입니다.

차이점에 대한 더 자세한 논의는 (이 포럼에서) 문제 공간에 대한 더 자세한 논의가 없다면 실용적이지 않습니다. 응용 프로그램이 데이터베이스를 사용하는 방법, 테이블 수, 테이블 크기, 트랜잭션로드, 선택 볼륨 , 삽입, 업데이트, 동시성 요구 사항, 복제 기능 등


데이터베이스의 논리적 설계는 데이터 분석 및 사용자 요구 사항을 중심으로해야합니다. 관계형 데이터베이스를 사용하는 선택은 나중에 이루어질 것이며, 나중에 관계형 데이터베이스 관리 시스템으로 MySQL을 선택한 다음 각 테이블에 대한 스토리지 엔진을 선택할 수도 있습니다.


MYISAM :

  1. MYISAM은 테이블 수준 잠금을 지원합니다
  2. 속도가 필요한 MyISAM
  3. MyISAM은 외래 키를 지원하지 않으므로 MYISAM으로 MySQL을 호출하는 것은 DBMS입니다
  4. MyISAM은 별도의 세 가지 다른 파일을 사용하여 테이블, 데이터 및 인덱스를 디스크 공간에 저장합니다. (tablename.FRM, tablename.MYD, tablename.MYI)
  5. MYISAM은 거래를 지원하지 않습니다. MYISAM으로 커밋하고 롤백 할 수 없습니다. 명령을 내리면 완료됩니다.
  6. MYISAM은 전체 텍스트 검색을 지원합니다
  7. 선택이 많고 업데이트 및 삭제가 적어 테이블이 더 정적 인 경우 MyISAM을 사용할 수 있습니다.

이노 DB :

  1. InnoDB는 행 수준 잠금을 지원합니다
  2. 대용량 데이터를 처리 할 때 최대 성능을 발휘하도록 설계된 InnoDB
  3. InnoDB는 외래 키를 지원하므로 InnoDB로 MySQL을 호출하는 것은 RDBMS입니다
  4. InnoDB는 테이블 스페이스에 테이블과 인덱스를 저장합니다
  5. InnoDB는 트랜잭션을 지원합니다. InnoDB로 커밋 및 롤백 가능

참고 URL : https://stackoverflow.com/questions/12614541/whats-the-difference-between-myisam-and-innodb

반응형