2016-11-30 2 views
3

로컬 덤프를 얻기 위해 mysqldump exe를 시도했습니다. MAC_OS에서 정상적으로 작동했습니다. 그냥 창에서 출구 코드 1 및 로컬 빈 .sql 파일을 얻을.MySqlDump - Windows를 사용하여 빈 덤프

$command = ''.$locationDumpExe.' --user='.$dbuser.' --password='.$dbpassword.' --no-data --host=localhost '.$dbname.' > '.$dumpfile.''; 

exec($command,$output,$return_var); 

변수는 다음과 같이 설정했다 : 나는 다음 코드를 사용

  • $ locationDumpExe = "/ XAMPP/mysql을/빈";
  • $ dbuser = "root";
  • $ dbpassword = "";
  • $ dbname = "test_db"; 100 테이블과 ~ 50 개로 가득 - - 100 데이터 세트
  • $의 덤프 = "testdump.sql는"

return_var 1

test_db 90의 양을 가지고 반환합니다. 어쩌면 이것이 문제일까요?

Mac_OS에서 말했듯이 덤프는 정상적으로 작동하지만 좋은 이유로 Windows에서 덤프 기능을 사용해야합니다.

미리 도움을 주셔서 감사합니다. 당신이 창문을하려고 할 때

+1

명령을 에코 아웃하고 명령 줄에서 직접 시도하십시오. – aynber

+0

같은 결과, 시도해보십시오. –

+0

명령 행에 붙여 넣을 때 명령에서'testdump.sql'을 제거하면 어떤 메시지가 나옵니까? – aynber

답변

2

당신은 희망이 도움이

C:/wamp/bin/mysql/mysql5.6.17/bin/mysqldump.exe -h {hostname} -u {usernamne} -p{password} {dbName} > path/to/store/sql/file. 

mysqldump.exe의 전체 경로를 지정해야합니다. 감사합니다. Suman W.

+0

마지막으로 나는이 문제에 대한 결과를 얻었다. 당신의 해결책은 사실입니다. :) 내 $ locationDumpExe = 'c : /xampp/mysql/bin/mysqldump.exe를 변경했습니다. 이제 잘 작동합니다. –

+1

추가 정보 : 올바른 경로를 찾은 후에 종료 코드가 있습니다. 2 -> 올바른 권한이 없으면 주로 이렇게 나타납니다 -> 그래서 나는 사용자 이름과 암호가 올바른 권한을 가지고 있는지 살펴보아야했습니다. - 다른 사람이이 글을 읽는 것만으로도 더 많은 정보를 얻을 수 있습니다 :) –