mysqldump의 로컬 버전 다운로드/컴파일

mysqldump의 로컬 버전 다운로드/컴파일

다른 사람이 관리하는 웹서버를 사용하고 있습니다. 이 서버의 버전은 mysqldump2011년 버전입니다.

$ mysqldump --help mysqldump Ver 10.13 Distrib 5.1.63, for debian-linux-gnu (x86_64) Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

따라서 데이터베이스 덤프를 수행하려고 하면 다음과 같은 결과가 나타납니다.

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)

~에 따르면이 링크업그레이드해야 해요 mysqldump.

나는 시스템 관리자에게 이 작업을 요청했지만 일반적으로 도움이 되지 않는 응답을 받았습니다. 업그레이드하도록 설득할 수 있을지 의문입니다. 현재 새 서버로 마이그레이션할 수 있는 옵션은 없습니다.

내 홈 디렉토리에 로컬 버전을 다운로드하고 컴파일할 수 있는 방법이 있습니까(많은 종속 항목을 컴파일하지 않고)? 그렇다면 나에게 올바른 방향을 알려 주시겠습니까?

감사해요!

답변1

귀하의 링크에는 가장 빠른 솔루션도 포함되어 있습니다.

앙드레 패션 • 3년 전

안녕하세요, 다운그레이드하기 위해 5.6 데이터베이스를 mysqldump하는 동안 동일한 문제가 발생했습니다. mysql-client5.6이 설치되어 있지 않았기 때문에 약간 다른 접근 방식을 취했습니다.

방금 /usr/bin/mysqldump를 복사했습니다. vi -b mysqldump는 SET OPTION('/' 명령 사용)을 찾고 첫 번째 문자를 #으로 바꾸어 "#ET OPTION"('r' 명령 사용)을 읽고 저장했습니다. 내 덤프 실행(ESC:x)

이제 mysql5.6에 연결하여 데이터를 덤프할 수 있는 mysqldump 버전이 생겼습니다.

나에게 매력처럼 작동합니다

답변2

먼저 서버의 하드 드라이브를 확인하십시오. 최신 버전의 MySQL을 실행 중인 경우 올바른 버전이 mysqldump실제로 있어야 합니다. 검색 경로에 해당 버전이 없거나 검색 순서에서 이전 버전이 더 높을 수도 있습니다.

그렇지 않으면... 유사한 시스템에서 실행 파일의 복사본을 찾아 SFTP를 통해 전송해야 합니다. tarball에는 미리 빌드된 바이너리가 있습니다.공식 다운로드 웹사이트적절하게 "Linux Universal Compression TAR" 32 또는 64비트 버전을 찾으십시오. 아무것도 컴파일하거나 "설치"할 필요가 없습니다. 파일은 bin/이 디렉터리에 위치합니다 . 이것이 필요한 전부입니다. 나는 그것이 완전히 독립적이라고 합리적으로 확신합니다.

아니면 컴퓨터에서 복사하세요. 그들은 매우 휴대 가능합니다.

mysqldump그리고... 서버 시스템에서 실행될 필요가 없다는 것을 알고 계시죠 ? 어디에서 실행되는지는 중요하지 않습니다. 안 읽힌다아무것서버의 하드 드라이브에서. 로컬 유닉스 소켓이나 TCP 포트 3306을 통한 일반 클라이언트 연결을 사용하며 모든 데이터는 해당 연결을 통해 흐릅니다... 직접 사용할 수 없는 경우 일반적으로 터널을 사용하여 관리할 수 있습니다. SSH 쉘 세션으로 무료 라이딩.

관련 정보