1. 程式人生 > >linux 使用crontab新增定時任務,日誌顯示已經執行但是任務沒有成功呼叫解決方法

linux 使用crontab新增定時任務,日誌顯示已經執行但是任務沒有成功呼叫解決方法

問題描述:

使用 crontab 新增計劃任務定時呼叫儲存過程,crontab日誌顯示計劃任務已經執行,但是儲存過程沒有被呼叫。

原crontab內容:

50 10 * * *  sh /shell/demo.sh demo.sql >> /shell/demo.log

原因:

路徑問題,demo.sh、demo.sql、demo.log三個檔案路徑都在/shell下,在crontab中demo.sql沒有使用絕對路徑,導致計劃任務執行時找不到demo.sql,所以執行失敗。

解決方法:

①給demo.sql新增絕對路徑:

    50 10 * * *  sh /shell/demo.sh /shell/demo.sql >> /shell/demo.log

②先進入/shell目錄,再呼叫指令碼:

    50 10 * * *  cd /shell/ && sh demo.sh demo.sql >> /shell/demo.log