Sqoop import-all-tables命令的问题



我试图使用Sqoop从几个SQL Server数据库导入所有表到HDFS。我使用Cloudera CDH 5.7。所以我输入以下命令:

sqoop import-all-tables --connect "jdbc:sqlserver://X.X.X.X:1433;database=FEPDB" --username XXXXX --password XXXXX --hive-import

运行成功,但是没有导入'FEPDB'数据库中的所有表。我没有在HDFS的hive目录中找到它们,或者当我列出hive中存在的所有表时。

所以我尝试将所有的表导入到HDFS的目录中,然后创建hive表。我给出了以下命令:

   sqoop import-all-tables --connect "jdbc:sqlserver://X.X.X.X:1433;database=FEPDB" --username XXXXX --password XXXXX --target-dir "/user/FEPDB"

它给了我一个错误说

无法识别的参数——target-dir

——target-dir参数不能与import-all-tables命令一起工作吗?为什么没有首先导入数据库中的所有表?是否有一种方法可以克服这些错误并以更简单的方式导入所有表?

任何帮助都会很感激。谢谢你。

import-all-tables expect参数with——warehouse-dir,提供warehouse-dir和HDFS路径,它将工作

请试试:sqoop import-all-tables——connect "jdbc:sqlserver://X.X.X.X:1433;database=FEPDB"——username - XXXXX——password - XXXXX——warehouse-dir

最新更新