다음 편집자는 mysqldump 데이터 내보내기 문제를 자세히 논의하는 기사를 가져올 것입니다. 에디터가 꽤 좋다고 생각해서 지금 공유해서 참고용으로 올려보겠습니다.
1. mysqldump 사용시 오류(1064)가 발생하는 이유는 mysqldump 버전이 너무 낮고 현재 데이터베이스와 일치하지 않기 때문입니다. 버전.
mysqldump: Couldn't execute 'SET OPTION SQL_QUOTE_SHOW_CREATE=1': You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OPTION SQL_QUOTE_SHOW_CREATE=1' at line 1 (1064) [root@bastion-IDC ~]# mysqldump --versionmysqldump Ver 10.13 Distrib 5.1.61, for redhat-linux-gnu (x86_64) [root@bastion-IDC ~]# mysql //或者登陆mysql,select version();也可查看版本 Server version: 5.6.25-log Source distribution。。。。。
이 경우 mysql 설치 디렉터리에 있는 mysqldump의 절대 경로를 알고 있어야 합니다.
2, 내보낼 때 문자 집합을 지정하면 오류가 보고됩니다.
Character set 'utf-8' is not a compiled character set and is not specifie . --default-character-set=utf-8
문자 집합이 잘못되었기 때문입니다. . Yes--default-character-set=utf8
3, 내보낼 때 경고 메시지 표시, GTID가 있는 서버에서 부분 덤프
[root@bastion-IDC ~]# mysqldump -uroot -p xqsj_db > xqsj_db20160811.sql Warning: A partial dump from a server that has GTIDs will by default include the GTIDs of all transactions, even those that changed suppressed parts of the database. If you don't want to restore GTIDs, pass --set-gtid-purged=OFF. To make a complete dump, pass --all-databases --triggers --routines --events.
GTID에 대해 5.6 이후에는 데이터베이스의 마스터-대기 일관성, 오류 복구 및 내결함성을 향상하기 위해 GTID(글로벌 트랜잭션 ID)가 추가되었습니다.
공식적으로 지정됨: 전역 트랜잭션 식별자(GTID)는 원본 서버(마스터)에서 커밋된 각 트랜잭션과 연결되어 생성되고 연결된 고유 식별자입니다.
따라서 데이터베이스에서 고유하기 때문일 수 있지만, 가져온 다른 라이브러리가 중복될 수 있습니다. 모두를 위한 알림이 있을 것입니다.
은 --set-gtid-purged=off 또는 --gtid-mode=OFF 두 매개변수를 추가하여 설정할 수 있습니다.
원본 GTID를 사용하는 대신 가져오기 라이브러리에서 GTID를 다시 생성할 수 있습니다.
아아아아위 내용은 mysqldump 데이터 내보내기 문제에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!