プロが教えるわが家の防犯対策術!

いつもご助言いただき、ありがとうございます。
現在、PHP、Mysql、Cronでデータベースの自動バックアップに挑戦しています。
プログラム自体はできたのですが、バックアップされたSQLファイルのファイルサイズがゼロになってしまいます。

作成したプログラムは下記のサイトを参考にして作成しました。
http://www.tailtension.com/php/1494/

(1)プログラムファイルに直接アクセスすると、問題なく作動します。
(2)CRONで動作させるとファイルサイズがゼロになってしまいます。

使用しているサーバーはさくらサーバーなのですが、サーバー側の使用なのでしょうか・・・。

詳しい方がいらっしゃいましたら、ご助言いただけないでしょうか。
よろしくお願いいたします。

A 回答 (1件)

cronではまる一番の理由は、「環境が最小限になっている」ことです。


環境変数、特にPATHが別のものになっており、シェルからは実行できるけどcronでは失敗する、ということがよくあります。

そのPHPのスクリプトはmysqldumpコマンドをコマンド名だけで実行しようとしています。
このとき、環境変数PATHを使って探すので、cron実行時のPATH(おそらく /usr/bin:/bin 程度しか入って無いと思います)に無ければ(/usr/local/binにある、とか)見つけることができません。
    • good
    • 1
この回答へのお礼

kmeeさん

ご回答いただきありがとうございます!ご指摘通り、「mysqldump」のパスに間違いがありました。
ちゃんとプログラムが動作しました、本当にありがとうございました!

お礼日時:2016/02/06 03:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!