可以使用crontab来定时执行shell脚本,实现每天凌晨2点执行datax同步任务的功能。具体步骤如下:
1. 编写shell脚本
在Linux服务器上创建一个新的文件,例如mysql2es.sh,并将以下内容复制到文件中:
```
#!/bin/bash
python /path/to/datax.py /path/to/job/mysql2es.json time=$(date +%Y-%m-%d)
```
其中,/path/to/datax.py是datax的安装路径,/path/to/job/mysql2es.json是json配置文件的路径。
该脚本会在每天凌晨2点执行datax同步任务,并传递当前日期作为时间参数。
2. 添加执行权限
在终端中执行以下命令,为脚本文件添加执行权限:
```
chmod +x mysql2es.sh
```
3. 添加定时任务
在终端中执行以下命令,打开crontab编辑器:
```
crontab -e
```
在编辑器中添加以下内容:
```
0 2 * * * /path/to/mysql2es.sh >> /path/to/mysql2es.log 2>&1
```
其中,0 2 * * *表示每天凌晨2点执行,/path/to/mysql2es.sh是脚本文件的路径,/path/to/mysql2es.log是日志文件的路径。
保存并退出编辑器即可。
4. 查看日志
在每次执行完毕后,可以查看日志文件以确认同步任务是否成功执行。例如:
```
tail -f /path/to/mysql2es.log
```