crontab으로 일정 시간마다 PHP 파일을 실행하려면 어떻게 하나요?
💡 요약 정리
- crontab은 분 시 날짜 달 요일 command 형식으로 설정합니다
- PHP 파일 첫 줄에 #!/usr/local/bin/php -q로 PHP 경로를 지정합니다
- chmod +x 명령으로 실행 권한을 부여합니다
- crontab -e로 등록하고 /var/log/cron으로 실행 로그를 확인합니다
1. crontab 설정예제
분 시 날짜 달 요일 권한 command 형식으로 입력해줍니다
예시:
05 * * * * /root/backup/rsync_backup.pl -> 매시 5분에 rsync_backup.pl 실행
05 15 * * * /root/backup/mysql_dump.sh -> 매일 오후 3시 5분에 mysql_dump.sh 실행
2. mysql_update.php 작성
#!/usr/local/bin/php -q (리눅스에서 php 경로를 적어줍니다)
<?
conn=mysql_connect("localhost","test","password");
mysql_select_db("test",$conn);
mysql_query("update test set update=test1");
?>
mysql_update.php 의 실행권한을 줍니다
[root@test ~]$ chmod +x /root/mysql/mysql_update.php
3. mysql_update.php 실행 테스트
쉘상에서 mysql_update.php를 실행하여 정상작동하는지 확인합니다.
[root@test ~]$ /root/mysql/mysql_update.php >> /root/mysql/cron/mysql_update.log
4. crontab 등록
[root@test ~]$ crontab -e
# cronjob - mysql_update
*/5 * * * * /root/mysql/mysql_update.php >> /root/mysql/cron/mysql_update.log 2>&1
5. cronlog 확인
[root@test ~]$ tail -f /var/log/cron
Jul 27 06:55:01 qsh-0944 crond[5987]: (root) CMD (/root/mysql/mysql_update.php)
Jul 27 07:01:01 qsh-0944 crond[5988]: (root) CMD (/root/mysql/mysql_update.php)
문제가 해결되지 않았나요?
궁금하신 사항은 언제든지 1:1 문의게시판으로 문의해 주세요.
문의 시 포함 정보:
- 카페24 아이디
- 서비스 ID: 서버호스팅 서비스 ID
- PHP 파일 경로: 실행하려는 PHP 파일의 절대 경로
- crontab 설정: 등록한 crontab 내용
- 에러 로그: /var/log/cron의 에러 메시지