我正在尝试使用sqoop进行增量最后修改
sqoop job --create IncrementalImport \
-- import \
--connect 'jdbc:sqlserver://servername;username=xxxxx;password=xxxx;database=xxxx' \
--driver "com.microsoft.sqlserver.jdbc.SQLServerDriver" \
--table table_name \
--target-dir /dir_name \
--incremental lastmodified \
--check-column date \
--merge-key primary_key_column \
-m 1
执行sqoop作业--exec IncrementalImport时出现问题
警告:/usr/hdp/2.6.5.0-292/accumulo不存在! Accumulo 导入将失败。请将$ ACCUMULO_HOME设置为您的根目录 Accumulo安装。捡起JAVA_TOOL_OPTIONS:-Xmx1024m -Djava.io.tmpdir = / h / tmp 18/10/24 08:27:40信息sqoop.Sqoop:运行Sqoop版本:1.4.6.2.6.5.0-292 ssound13 @ hpchdd2e:〜> sqoop作业--exec IncrementalImportLastModified警告:/usr/hdp/2.6.5.0-292/accumulo 不存在! Accumulo导入将失败。请设置$ ACCUMULO_HOME 到Accumulo安装的根目录。已接 JAVA_TOOL_OPTIONS:-Xmx1024m -Djava.io.tmpdir = / h / tmp 18/10/24 08:27:57 信息sqoop.Sqoop:正在运行的Sqoop版本:1.4.6.2.6.5.0-292 18/10/24 08:27:58 WARN sqoop.ConnFactory:参数--driver设置为 显式驱动程序,但是没有合适的连接管理器 设置(通过--connection-manager)。 Sqoop将回落到 org.apache.sqoop.manager.GenericJdbcManager。请明确指定 下次应使用哪个连接管理器。 18/10/24 08:27:58 INFO manager.SqlManager:使用默认的fetchSize 1000 18/10/24 08:27:58 INFO工具.CodeGenTool:开始代码生成18/10/24 08:27:59 INFO manager.SqlManager:执行SQL语句:SELECT t。* FROM table_name AS t WHERE 1 = 0 18/10/24 08:27:59 INFO manager.SqlManager:执行SQL语句:SELECT t。* FROM table_name AS t WHERE 1 = 0 18/10/24 08:27:59 INFO orm.CompilationManager:HADOOP_MAPRED_HOME是 /usr/hdp/2.6.5.0-292/hadoop-mapreduce注意: /tmp/sqoop-ssound13/compile/48dc5192c1b8869fb61635da887c3aa0/table_name.java 使用或覆盖已弃用的API。注意:重新编译 -Xlint:不建议使用。 18/10/24 08:28:00 INFO orm.CompilationManager:编写jar文件: /tmp/sqoop-ssound13/compile/48dc5192c1b8869fb61635da887c3aa0/Attrib_Type.jar 18/10/24 08:28:01 INFO manager.SqlManager:执行SQL语句: SELECT t。* FROM table_name AS t WHERE 1 = 0 18/10/24 08:28:01错误 manager.SqlManager:访问当前时间戳的SQL异常: com.microsoft.sqlserver.jdbc.SQLServerException:附近的语法不正确 ')'。 com.microsoft.sqlserver.jdbc.SQLServerException:语法错误 ')'附近。在 com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216) 在 com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1515) 在 com.microsoft.sqlserver.jdbc.SQLServerStatement.doExecuteStatement(SQLServerStatement.java:792) 在 com.microsoft.sqlserver.jdbc.SQLServerStatement $ StmtExecCmd.doExecute(SQLServerStatement.java:689) 在com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1715) 在 com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:180) 在 com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:155) 在 com.microsoft.sqlserver.jdbc.SQLServerStatement.executeQuery(SQLServerStatement.java:616) 在 org.apache.sqoop.manager.SqlManager.getCurrentDbTimestamp(SqlManager.java:987) 在 org.apache.sqoop.tool.ImportTool.initIncrementalConstraints(ImportTool.java:328) 在org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:498) 在org.apache.sqoop.tool.ImportTool.run(ImportTool.java:615)处 org.apache.sqoop.tool.JobTool.execJob(JobTool.java:243)在 org.apache.sqoop.tool.JobTool.run(JobTool.java:298)在 org.apache.sqoop.Sqoop.run(Sqoop.java:147)在 org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)在 org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)在 org.apache.sqoop.Sqoop.runTool(Sqoop.java:225)在 org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)在 org.apache.sqoop.Sqoop.main(Sqoop.java:243)18/10/24 08:28:01错误 tool.ImportTool:遇到IOException正在运行导入作业: java.io.IOException:无法从数据库获取当前时间 org.apache.sqoop.tool.ImportTool.initIncrementalConstraints(ImportTool.java:330) 在org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:498) 在org.apache.sqoop.tool.ImportTool.run(ImportTool.java:615)处 org.apache.sqoop.tool.JobTool.execJob(JobTool.java:243)在 org.apache.sqoop.tool.JobTool.run(JobTool.java:298)在 org.apache.sqoop.Sqoop.run(Sqoop.java:147)在 org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)在 org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)在 org.apache.sqoop.Sqoop.runTool(Sqoop.java:225)在 org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)在 org.apache.sqoop.Sqoop.main(Sqoop.java:243)
任何人都可以帮助解决该问题
在sql server中,最后修改的列的数据类型为datetime-yyyy-mm-dd 00:00:000.0000