2013-08-03 6 views
0

나는의/var에 backup.sh를 생성/www /에서 다른 모든 cronjobs는 cronjobs/: 난 그냥 내 다른 cronjobs 같이 크론를 지정하여/etc/crontab을에서데이터베이스 백업

mysqldump --user root --password=mypass12--opt MYDATABASE \ 
    > /home/balint/db/db-`date +%Y-%m-%d`.sql 

: 하나의 파일이/홈/발린/DB/ 에 생성됩니다

*/2 * * * * root wget -q -O- http://mydomain.com/cronjobs/backup.sh 

하지 내가 수동으로 DB 폴더를 만들었습니다. 그리고 사용자 root와 암호 mypass12로 mysql과 phpmyadmin을 입력 할 수 있습니다. */2는 테스트 용입니다.

무엇이 누락 되었습니까?

답변

0

wget 명령은 mydomain.com에서 스크립트를 가져 오지만 실행하지 않습니다. 따라서 스크립트가 실행되고 있지 않은 것처럼 행동하는 것은 놀랄 일이 아닙니다.

은 논평에 대한 응답으로 추가 : "모든 cronjobs가"그런 식으로 작성하고, 당신은 당신에 대해 말해주지 않았다 일부 비표준 cron를 사용하여 작업하는 경우

. 우분투 13.04에서 설명한대로 /etc/crontab의 작업을 테스트했습니다. 문서화 된대로 동작하고 다른 쉘에 입력으로 작업의 cmd 부분의 표준 출력을 전달하지 않았습니다.

/var/log/syslog에서 진단을 보았습니까?

+0

내 모든 cronjobs와 wget과 명령을 사용하여 그들은 모두 잘 작동를 참조 업로드 할 수 있습니다. – erdomester

0

먼저 백업 스크립트의 명령을 사용하여 mysql 덤프를 백업하십시오.

mysqldump --user root --password=mypass12--opt MYDATABASE > /home/balint/db/db-`$(date +"%d-%m-%Y")`.sql 

하고 전송하는 SCP와 함께 추가

은 당신이 원하는 곳에 원격 시스템에서 기계의 공개 키를 추가해야합니다 암호없는 로그인에 대한 원격 위치

scp /home/balint/db/db-`$(date +"%d-%m-%Y")`.sql [email protected] 

에 생성되는 데이터베이스 덤프는 아래의 링크를

SSH passwordless login