2011-08-20 2 views
6

24 시간마다 웹 사이트에서 특정 데이터를 가져오고 싶습니다. 코드는 24 시간마다 실행되어야하며 MySQL 데이터베이스를 업데이트해야합니다. 사용자 이벤트없이이 작업을 수행하려면 어떻게해야합니까?방법 : 서버에서 24 시간마다 코드 블록을 실행 하시겠습니까?

나중에 전체 차이를 찾기 위해 동일한 데이터를 사용하겠습니다.

totalIncrement = currentData - earlierData

earlierData MySQL 데이터베이스에서 가져온이며, 현재의 데이터는 외부 웹 사이트 쿼리에서 인출된다.

나는 리눅스에서 cron에 대해 들어 본 적이 있지만 한번도 시도한 적이 없다. 어떤 신체가 그것을위한 기본적인 아이디어를 줄 수 있습니까? 또는 어떤 신뢰할 수있는 링크?

내가 이런 식으로하고 싶지 ::

먼저가 가져 오는 작업을 수행하는 PHP 프로그램/파일을 생성 할 수 있습니다. 둘째는 PHP 파일을 24 시간마다 실행 정도 ...

+0

cronjob은 분명히 당신이 찾고있는 제품입니다. 인터넷에는 그들이 무엇인지 설명하고 사용 방법을 설명하는 많은 리소스가 있습니다. http://en.wikipedia.org/wiki/Cron으로 시작할 수 있습니다. –

+4

Cron 작업에 대한 자습서로 Google을 사용해 보셨나요? 어쨌든 적어도 노력해야 해. –

+0

@ 루카 노스. google cron job을하기 위해서는 cron job이라고 불리는 것을 알아야합니다. ** Linux로 전환했을 때 ** 분명하지 않았습니다. –

답변

-3

먼저 당신은이 링크 www.yourdomain.com/에 갈 때마다이 예를 들어, PHP 파일이

그래서 cron.php해야 할 것이다 crom.php 스크립트가 실행되었습니다

이제이 링크를 cron 작업에 추가하십시오. 서버에서 cron 작업을 설정하려면 this PHP 클래스

+1

왜 그가 잘못했다고 설명하지 않고 모두 downvoting입니까? – BRampersad

+0

무엇이 잘못 되었습니까? – jimy

2

쉘을여십시오.
크론 파일을 편집하거나 편집을 할 "의 crontab -e"를 입력
vi를 사용 (또는 다른 편집기) (정지 있으며 crond 서비스 서비스을 중지 있으며 crond).
편집 후 "ESC"을 누르십시오. 그런 다음 ": wq"을 입력하여 저장하고 종료하십시오.
은 중지하고의 crontab -e를 사용하는 경우 서비스가 필요하지 않습니다 시작
(을 시작 있으며 crond 다시 서비스 서비스를 시작 ).

스크립트가 지금 실행되고 있어야합니다. here 또는 here 구문을 확인하십시오. 변경 사항을 보려면 "crontab -l"을 입력하십시오.

이 정보가 도움이되기를 바랍니다.

+0

-1 : cron은 루트 액세스 (기본적으로 대부분의 사용자에게 허용되지 않음) 또는 새 crontab 파일을 선택하기 위해 데몬을 다시 시작하지 않아도됩니다. 또한 "vi"사용법을 사람들에게 효과적으로 알리고 있습니다. 물론 crontab -e는 (필연적으로) "vi"를 사용하지 않으며, VISUAL 환경 변수에있는 편집기를 사용할 수 있습니다. 일부 배포판은 기본적으로 다른 편집기를 사용합니다. – MarkR

+0

"vi"를 사용하면 서비스를 다시 시작해야합니까? –

+0

crontab -e 구성 방법에 따라 "vi"를 호출 할 수 있습니다. 이 경우 서비스를 다시 시작할 필요가 없습니다. 비 루트 사용자가 사용할 수 있습니다. – MarkR

0

crontab (5)을 편집 할 때 cron 데몬을 시작하고 중지하는 데 대한 조언을 무시해도 안전합니다. crontab (1) 유틸리티는 crontab (5) 파일을 다시 읽어야하고 변경 사항이 즉시 적용된다는 것을 cron 데몬에 알립니다. crontab (1) 유틸리티없이 crontab (5) 파일을 직접 편집 한 경우에만 cron 데몬을 다시 시작해야하는 유일한 이유가 있습니다.

+0

관련이있는 답변에 의견을 남기십시오. 나는 당신의 포인트가 유효하다고 생각합니다. – MarkR

+0

의견을 추가 할 충분한 시점이 없습니다. :( –

관련 문제