我试图从Teradata的数据导入到HDFS位置。我有权查看该数据库。所以,我在另一个数据库中创建一个临时表。但是,当我尝试运行代码,它说错误
错误:运行Sqoop版本:1.4.6.2.6.5.0-292 18/12/23二十一点49分41秒WARN tool.BaseSqoopTool:在命令行设置你的密码是不安全的。考虑使用-P来代替。 18/12/23 21时49分41秒ERROR tool.BaseSqoopTool:用于导入错误解析参数:分级表,t_hit_data_01_staging,-clear分段表,--query,SELECT * FROM表1,其中流延(如DATE1日期)< =日期 '2017年9月2日' 和$条件,--target-DIR,<>,--split-通过,DATE1,-m,25
我已在代码中的临时表中的细节和运行它。但抛出错误。 (Error parsing arguments from import and as un-recognized arguments from staging table
)
sqoop import \
--connect jdbc:teradata://<server_link>/Database=db01 \
--connection-manager org.apache.sqoop.teradata.TeradataConnManager \
--username <UN> \
--password <PWD> \
–-staging-table db02.table1_staging –clear-staging-table \
--query "select * from table1 where cast(date1 as Date) <= date '2017-09-02' and \$CONDITIONS " \
--target-dir '<hdfs location>' \
--split-by date1 -m 25`
这些数据应被加载到HDFS的位置,使用临时表在Teradata.Then另一个数据库后来改变where子句它sqoop应该在HDFS的位置相同的文件夹下创建另一个文件。例如:部分0000,下一个文件作为部分-0001等,