2017-05-21 9 views
0

SQLデータベースを日常的にバックアップするためにcronジョブを実行しようとしています。これは私が使用しているコードです。SQLデータベースを毎日バックアップしようとしています

/usr/local/mysql/bin/mysqldump -uroot -ppassword --opt database > /path/to/directory/filename.sql  

しかし、それは次のエラーで私を返します。
/binに/ bashの:-c:行0:-c:予期しないEOFを ` ''
/binに/ bashのを一致させるために見ながらライン1:構文エラー:あなたは特殊文字と同じように、複雑なシェルコマンドでcronを使用する必要がある場合は解決策があるかと思っファイル

の予期しない終わり....

答えて

0

、あなたは外部スクリプトに入れなければなりませんcrontabでスクリプトを呼び出すだけです。 このように、テストのために手動で実行することもできます。

例:

  • は、例えば、
  • がSHファイルの先頭に#!/bin/shを追加することを忘れないでください/usr/local/sbin/my_backup_script.sh、中にあなたのコマンドを入れ
  • その後のcrontabに0 4 * * * root /usr/local/sbin/my_backup_script.shを追加し、手動でスクリプトを実行すると、仕事
  • をやっていることchmod a+x /usr/local/sbin/my_backup_script.sh
  • テストを行う
  • (または0 4 * * * /usr/local/sbin/my_backup_script.shあなたは個人のcrontabを使用している場合)

(あなたはフォームを使用して、あなたはそれを実行したい時に0 4を置き換えることができ、「ミリHH」)

+0

はちょうどそれをやって試みたが、私はよ完全にbashスクリプトに慣れていない。私の現在のbashスクリプトは次のようになります: '#!/ bin/bash /usr/bin/mysqldump -uUSERNAME -pPASSWORD --opt DATABASE_NAME/path/to/backup.sql'コードを手動で実行しても、 .sqlファイル。ここで失われたキンダー: '( –

+0

"#!/ bin/bash"の後ろに改行を追加する必要があります。 – Elektordi

関連する問題