문제

MySQL 데이터베이스의 백업을 가져 왔지만 복원하려고 할 때 저장된 절차가 복원되지 않습니다. mysqldump 명령에서 우리가 사용하는 백업과 같은 방법이 있습니까? MySQL에서 그런 일을 할 수 있습니까?

MySQLDump를 사용하는 경우 MySQL 테이블을 덤프하는 것이지만 MySQL 명령을 사용하여 복원하는 경우 3062 행에 오류 -ERROR 1064 (42000)를 제공합니다. 오른쪽 구문이 'Btree를 사용하여'Engine = MyISAM 기본 charset = latin1 '에 근접 할 수있는 MySQL 서버 버전에 해당하는 설명서를 확인하십시오.

미리 감사드립니다

도움이 되었습니까?

해결책

5.1 인스턴스로 5.1 백업을 복원합니다. 이 덤프를 5.0에로드하려면 테이블 정의에서 'Btree 사용'을 제거해야합니다.

다른 팁

한 가지 해결책은 데이터없이 스키마를 덤프하고 'BTREE 사용'을 검색하고 DB를 생성하고 테이블 정의없이 덤프를로드하는 것입니다.

또는 UN*X 쉘에서 Perl을 사용할 수 있다고 가정하면 전체 덤프를 사용하여 직접 수행하고 Perl (또는 AWK, SED, Ruby ...)과 함께 파일을 필터링 할 수 있습니다.

cat name-of-dump.sql | perl -pe 's/USING BTREE//' | mysql name_of_db

또는 덤프가 압축 된 경우 :

zcat name-of-dump.sql.gz | ...
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top