MariaDB의 Row-based Replication With No Primary Key


MariaDB의 Row-based Replication With No Primary Key

MariaDB는 테이블의 로우 기반(row-based replication) 이중화에서 primary key가 없지만 다른 인덱스(index)가 있는 경우 복제가 가능하도록 지원합니다. 로우 기반 복제 UPDATE나 DELETE에서 사용될 때, replica는 컬럼의 값을 기반으로 복제될 로우(row)의 위치를 찾아야 합니다. 만약 테이블이 최소 하나의 인덱스를 가진다면 해당 인덱스를 이용해서 찾을 수 있습니다. 그러나, 인덱스가 없다면 로우 하나를 복제하기 위해 전체 테이블을 검색하는 매우 비효율 적인 작업을 해야합니다. 이런 비효율은 일반적으로 허용하지 않습니다. MariaDB는 가장 효율적인 인덱스를 찾기 위해 다음의 순서로 진행합니다. primary key가 있으면 이것을 사용합니다. Not NULL 제약을 가진 첫번째 유니크 인덱스(unique index)를 사용합니다. 그 외에는 일반 인덱스 중에 하나를 선택합니다.다만 FULLTEXT 인덱스는 사용하지 않습니다. non-...



원문링크 : MariaDB의 Row-based Replication With No Primary Key