innodb 테이블을 가진 db를 myisam으로 변환하고 싶습니다. 어떻게해야합니까? 테이블 사이에 외래 키가 존재합니다.외국인이있는 Innodb을 mysiam으로 직접 변환 할 수 있습니까?
가장 좋은 방법으로 어떻게 만들 수 있습니까?
innodb 테이블을 가진 db를 myisam으로 변환하고 싶습니다. 어떻게해야합니까? 테이블 사이에 외래 키가 존재합니다.외국인이있는 Innodb을 mysiam으로 직접 변환 할 수 있습니까?
가장 좋은 방법으로 어떻게 만들 수 있습니까?
외래 키가있는 동안 InnoDB에서 MyISAM으로 직접 변환 할 수 없습니다. 먼저 제약 조건을 제거해야합니다. 이렇게하려면 각 테이블에 대해 다음과 같이 각 구속 조건에 대해
SHOW CREATE TABLE tablename
x
이 CONSTRAINT
을 사이에 표시되는 식별자입니다 ALTER TABLE tablename DROP FOREIGN KEY x
를 발급해야합니다 및 FOREIGN KEY
.SHOW CREATE TABLE tablename
다시. 외래 키 제약은 인덱스 뒤에 남을지도 모른다. (InnoDB는 각 외래 키에 인덱스를 필요로하기 때문에 제약 조건을 제거했기 때문에 인덱스를 제거 할 필요는 없다). 더 이상 원하지 않는 각 색인에 대해 ALTER TABLE tablename DROP INDEX indexname
을 발행하십시오.제약 조건과 관련된 모든 테이블에 대해이 작업을 완료하면 ALTER TABLE tablename ENGINE=MYISAM
을 사용하여 테이블을 MyISAM으로 개별적으로 변환 할 수 있습니다.
왜 하시겠습니까? 참조 무결성이 필요하지 않습니까? –