记录下使用crontab,datax定时同步数据遇到的问题。
1.开始使用如下配置,死活不执行。网上说crontab环境便利的问题,设置了也没反应。
[root@hxjk_test_mysql_redis_file test]# crontab -l SHELL=/bin/bash * 1 * * * sh /test/test.sh */3 * * * * python /data/datax/bin/datax.py /data/datax/job/job.json
crontab中的环境变量默认不会将我们自行定义的环境变量载入进来,所以执行脚本的时候,需要执行source命令
修改如下执行成功:
[root@hxjk_test_mysql_redis_file test]# crontab -l SHELL=/bin/bash * 1 * * * sh /test/test.sh */3 * * * * sh /data/crontab/mysqltomysql1.sh
[root@hxjk_test_mysql_redis_file crontab]# more mysqltomysql1.sh #!/bin/sh source /etc/profile python /data/datax/bin/datax.py /data/datax/job/job.json
定时执行成功。
Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT (2018-09-09 23:54:13.509 [job-0] INFO JobContainer - PerfTrace not enable!) Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT (2018-09-09 23:54:13.509 [job-0] INFO StandAloneJobContainerCommunicator - Total 53 records, 4398 b ytes | Speed 439B/s, 5 records/s | Error 0 records, 0 bytes | All Task WaitWriterTime 0.000s | All Task WaitReaderTime 0.030s | Percentage 100.00%) Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT (2018-09-09 23:54:13.510 [job-0] INFO JobContainer - ) Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT (任务启动时刻 : 2018-09-09 23:54:02) Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT (任务结束时刻 : 2018-09-09 23:54:13) Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT (任务总计耗时 : 10s) Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT (任务平均流量 : 439B/s) Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT (记录写入速度 : 5rec/s) Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT (读出记录总数 : 53) Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT (读写失败总数 : 0) Sep 9 23:54:13 hxjk_test_mysql_redis_file CROND[23864]: (root) CMDOUT () [root@hxjk_test_mysql_redis_file crontab]#