1. 无法访问 datax-web
- 问题现象:
- 启动无报错,但无法访问 datax-web 网页
-
处理方法:重新安装初始化 datax
cd /home/work/datax-web/build/datax-web-2.1.2/bin & ./install.sh
2. 初始化 datax 时 MySQL 拒绝访问
-
报错内容:
ERROR 1045 (28000): Access denied for user 'root'@'xxx.xxx.xxx.xxx' (using password: YES)
-
处理方法:不要使用 root 账号连接 MySQL,使用 jianzi 账号密码连接 MySQL
Please input the db username(default: root): jianzi Please input the db password(default: ): 4ylnkL6lRT
3. 启动 DataX 不成功
-
报错内容:
DATAX-EXEXUTOR didn't start successfully, not found in the java process table
-
处理方法:
./start-all.sh start -v
4. 无法连接数据源
-
报错内容:
Code:[DBUtilErrorCode-10], Description:[连接数据库失败. 请检查您的 账号、密码、数据库名称、IP、Port或者向 DBA 寻求帮助(注意网络环境).]. - 具体错误信息为:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.
-
处理方法:
- 检查要连接的 MySQL 账号密码;
- 检查要连接的 MySQL 服务器端口是否开放;
- 检查要连接的 MySQL 版本,如果是 MySQL8,修改 jdbc 驱动类:
com.mysql.cj.jdbc.Driver
5. datax-web 创建任务报错
-
报错内容:
### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 't.user_id' in 'field list' ### The error may exist in file [/home/work/datax-web/build/datax-web-2.1.2/modules/datax-admin/conf/mybatis-mapper/JobInfoMapper.xml] ### The error may involve com.wugui.datax.admin.mapper.JobInfoMapper.findAll-Inline ### The error occurred while setting parameters ### SQL: SELECT t.id, t.job_group, t.job_cron, t.job_desc, t.add_time, t.update_time, t.user_id, t.alarm_email, t.executor_route_strategy, t.executor_handler, t.executor_param, t.executor_block_strategy, t.executor_timeout, t.executor_fail_retry_count, t.glue_type, t.glue_source, t.glue_remark, t.glue_updatetime, t.child_jobid, t.trigger_status, t.trigger_last_time, t.trigger_next_time, t.job_json, t.replace_param, t.jvm_param, t.inc_start_time, t.partition_info, t.last_handle_code, t.replace_param_type, t.project_id, t.reader_table, t.primary_key, t.inc_start_id, t.increment_type, t.datasource_id FROM job_info AS t ORDER BY job_desc ASC ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 't.user_id' in 'field list' ; bad SQL grammar []; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 't.user_id' in 'field list'
其中的关键错误是:
Unknown column 't.user_id' in 'field list'
。 -
处理方法:
连接 dataX 服务器上 MySQL,进入
dataxweb > jobinfo
,修改author(VARCHAR(50))
字段名为user_id(INT(11))
;修改后重新创建任务;
注意:这是个临时解决方案,详细原因并未知晓!!!
6. 调度失败
-
报错内容:
任务触发类型:手动触发 调度机器:172.16.0.157 执行器-注册方式:自动注册 执行器-地址列表:null 路由策略:随机 阻塞处理策略:单机串行 任务超时时间:0 失败重试次数:0 >>>>>>>>>>>触发调度<<<<<<<<<<< 调度失败:执行器地址为空
-
处理方法:
- 十分钟后再次执行任务。
7. can't find '__main__' module in ''
-
报错内容:
2022-04-20 20:18:57 [JobThread.run-130] <br>----------- datax-web job execute start -----------<br>----------- Param: 2022-04-20 20:18:57 [BuildCommand.buildDataXParam-100] ------------------Command parameters: 2022-04-20 20:18:57 [ExecutorJobHandler.execute-57] ------------------DataX process id: -1 2022-04-20 20:18:57 [ProcessCallbackThread.callbackLog-186] <br>----------- datax-web job callback finish. 2022-04-20 20:18:57 [AnalysisStatistics.analysisStatisticsLog-53] /usr/bin/python: can't find '__main__' module in '' 2022-04-20 20:18:57 [JobThread.run-165] <br>----------- datax-web job execute end(finish) -----------<br>----------- ReturnT:ReturnT [code=500, msg=command exit value(1) is failed, content=null] 2022-04-20 20:18:57 [TriggerCallbackThread.callbackLog-186] <br>----------- datax-web job callback finish.
-
处理方法:
-
原因分析:datax-web找不到datax启动文件(datax.py)
-
修改 datax-executor.sh 文件
cd /home/work/datax-web/modules/datax-executor/bin vim datax-executor.sh
找到下面的代码并注释掉。
# JAVA_OPTS=${JAVA_OPTS}" -Dserver.port="${SERVER_PORT}" -Ddata.path="${DATA_PATH}" -Dexecutor.port="${EXECUTOR_PORT}" -Djson.path="${JSON_PATH}" -Dpython.path="${PYTHON_PATH}" -Ddatax.admin.port="${DATAX_ADMIN_PORT}
写入成下面的代码。
JAVA_OPTS=${JAVA_OPTS}" -Dserver.port="${SERVER_PORT}" -Ddata.path="${DATA_PATH}" -Dexecutor.port="${EXECUTOR_PORT}" -Djson.path="${JSON_PATH}" -Dpython.path="/home/work/datax/bin/datax.py" -Ddatax.admin.port="${DATAX_ADMIN_PORT}
-
保存退出,重启 datax-web。
-
8. 您提供的配置文件存在错误信息,请检查您的作业配置。
-
报错内容:
` 插件[odpsreader,mysqlwriter]加载失败,1s后重试… Exception:Code:[Common-00], Describe:[您提供的配置文件存在错误信息,请检查您的作业配置 .] - 配置信息错误, 您提供的配置文件[/home/work/datax/plugin/reader/._hbase11xreader/plugin.json]不存在. 请检查您的配置文件. 经DataX智能分析,该任务最可能的错误原因是: com.alibaba.datax.common.exception.DataXException: Code:[Common-00], Description:[您提供的配置文件存在错误信息,请检查您的作业配置。]. -配置信息错误 ,您提供的配置文件:/home/work/datax/plugin/reader/._hbase11xreader/plugin.json]不存在,请检查您的配置文件。 `
-
原因分析:操作过 reader 目录的内容,系统会自动生成一个.DS_Store 的系统文件,dataX默认plugin/render都是文件夹,没有做操作系统这种层面的差异处理所以需要手动把错误路径下的._hbase11xreader文件删除即可。
-
处理方法:
find . -name '._*'|xargs rm -rf
9. 回滚此次写入, 采用每次写入一行方式提交
-
报错内容:
` WARN CommonRdbmsWriter$Task - 回滚此次写入, 采用每次写入一行方式提交. 因为:[9001, 2022052000014319216820803603453360741] unsupport packet=>030000001B0100, packet_name=mysql_set_server_option `
-
解决方法:
- 删除低版本
mysql-connector-java-xxx.jar
jar 包。
- 删除低版本