mysqldump를 사용하여 MyISAM 병합 테이블로 만든 테이블을 덤프 할 수 없다.병합 테이블의 mysqldump
시도 할 때 테이블 작성 구문이 포함 된 파일을 덤프 (단순히)하지만 원본 테이블의 데이터는 덤프하지 않습니다.
예상 있나요? 또는 알려진 버그입니까? 어떻게 MRG_MyISAM 테이블에 mysqldump의 동작을 복제 할 수 있습니까?
mysqldump를 사용하여 MyISAM 병합 테이블로 만든 테이블을 덤프 할 수 없다.병합 테이블의 mysqldump
시도 할 때 테이블 작성 구문이 포함 된 파일을 덤프 (단순히)하지만 원본 테이블의 데이터는 덤프하지 않습니다.
예상 있나요? 또는 알려진 버그입니까? 어떻게 MRG_MyISAM 테이블에 mysqldump의 동작을 복제 할 수 있습니까?
예상됩니다. MERGE 테이블은 단지 MyISAM 테이블의 매핑이다.
기본 테이블을 덤프해야합니다.
당신은 MERGE 테이블을 mysqldump에하는 에뮬레이션의 어떤 종류를 원한다면 지금
USE mydb
CREATE TABLE myhardtable LIKE mymergetable;
ALTER TABLE myhardtable ENGINE=MyISAM;
INSERT INTO myhardtable SELECT * FROM mymergetable;
(누구의 스토리지 엔진 인 표라고 mydb.mymergetable Mrg_MyISAM 용), 단지 이렇게 :
mysqldump -u... -p... mydb myhardtable > /root/MyMergeData.sql
이 작업을 수행 할 수도 있습니다
SELECT * INTO OUTFILE '/root/MyMergeData.sql'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
FROM mydb.myhardtable;
이것은 내가 상상 한 것입니다 : (새 테이블에 복사하는 간헐적 인 단계를 저장하려고했습니다 (큰 것입니다). outfile에 선택 전략을 사용하면 시작 부분에 테이블 생성 섹션이 포함됩니다 la mysqldump? 이것은 다른 DB/서버로 쉽게 가져 오기 위해 유용 할 것입니다. – DNadel
MySQL은 MyISAM 병합 테이블에서 자주 발생하는 여러 문제를 나열합니다. 코드가 없으면 특정 문제를 식별 할 수 없지만 시작하기 좋은 위치입니다. http://dev.mysql.com/doc/refman/5.1/en/merge-table-problems.html
정확한 코드는 덤프에 사용하고 있습니까? – citizenen