- ベストアンサー
LAMPシステムでのバッチ処理の方法は?スケジューラ等知りたいです
LAMPでWebシステムを開発中です。システム都合で夜間バッチ処理(MySQLのテーブル退避等のDB処理)を行う必要があります。 LAMP環境でバッチを行う場合、一般的に「どの様な言語で」「どの様なスケジューラで」行うのでしょうか。 また出来るだけ無料で使用が可能なスケジューラなどあればお教え頂けると助かります。 【環境】 Vine Linux 3.1、Apache2.0、MySQL 4.1.13 、PHP4.3.10です。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
PHPで作ったバッチを定時実行したいのなら、cron から PHP スクリプトを呼び出します。直接呼び出すよりは、sh経由で呼び出したほうが良いような気がします。 [backup.sh]--------------------------- #!/bin/bash cd /home/hoge; /usr/local/bin/php -q backup.php -------------------------------------- [crontab -e]-------------------------- 0 7 * * * /usr/local/bin/php -q /home/hoge/backup.sh -------------------------------------- ↑毎日7:00に/home/hoge/backup.shを起動 このように、PHPスクリプトをシェルスクリプト等で呼び出す場合(コマンドライン経由の場合)は、CGI版のPHPがインストールされている必要があります。 % which php とやって /usr/local/bin/php とか表示されれば大丈夫でしょう。
その他の回答 (1)
- angband
- ベストアンサー率51% (86/168)
「どのような言語で」 言語は、実行できればなんでもOKです。簡単なものならシェルスクリプト、 一番多いのは通常のコマンド(当然ソースはCで書かれている)、最近なら Perlなどのスクリプト言語でもいいでしょう。 「どのようなスケジューラで」 LinuxなどUNIX系のOSだと cron というコマンドで行います。 crontab というコマンドでバッチ処理を登録します。
お礼
回答どうもありがとうございます。 ちなみにPHPで実行することは出来ないものでしょうか? なにぶん一番慣れてるので。。