[mysql] mysqldump 복구시 오류날때 처리
MySQL 복구 및 백업
백업 명령 mysqldump -u root -p aaa > aaa.sql
복구 명령 mysql -u root -p aaa < aaa.sql
질문//
서버이전때문에 4.12버전의 디비데이터를 덤프시켜서
3.23으로 복구할려는데 에러가 생겼어요
에러 메시지는 아래와 같이 납니다.
ERROR 1064 at line 11: You have an error in your SQL syntax near 'ENGINE=MyISAM DEFAULT CHARSET=latin1'
하위 버전에서 복구할 방법은 없나요?
덤프할때 --compatible=mysql323 옵션을 사용해봐도 옵션이 먹지가 않더라구요.
이전할 서버에 mysql버전을 업그레이드하면 제일 간단하겠지만 그럴 치지도 못되어서 ..
새버전 업그레이드 하는 것 말고는 방법이 없을까요?
답변//
shell> mysqldump --skip-opt --compatible=mysql323 DB명 > 파일.sql -p
제 경우는 mysqldump --create-options --compatible=mysql40 으로 잘되었습니다.
mysqldump --create-options --compatible=mysql323 으로 될것 같습니다.
mysql 4.1 버전부터는 mysqldump를 그냥 실행하면 utf-8 코드로 백업 받습니다.
- 따라서 mysqldump를 할때 --default-character-set=euckr 옵셥을 주면 euckr 코드로 덤프 받습니다.
- 4.1버전의 경우 latin1 으로 기본세팅이 되므로 euckr 대신 latin1으로 해야할 수도 있습니다.
- 인서트문이 한줄씩 나오지 않을때는 --extended-insert=FALSE 를 추가합니다.
'IT-개발,DB' 카테고리의 다른 글
Visual Studio 2005 IDE 팁과 트릭 (0) | 2016.10.30 |
---|---|
[mysql] mysql root암호를 잃어버린 경우 (0) | 2016.10.30 |
익스트림 프로그래밍 (XP)의 '명암'(2) (0) | 2016.10.27 |
익스트림 프로그래밍 (XP)의 '명암'(1) (0) | 2016.10.27 |
그리스 문자 및 발음 표기 (0) | 2016.10.24 |
댓글