sqoop无法识别--import job命令中的query param

wfauudbj  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(697)

我正在尝试将数据从mssql服务器导出到配置单元。我使用以下命令将数据从users表导出到配置单元。

sqoop import --connect "jdbc:sqlserver://{ip}\LOCAL_INSTANCE;database=TEST_DB;user=sa;password=****" --table "Users_Table" --create-hive-table --hive-table users_export --target-dir /cdc/export/users --append --query "select * from Users_Table"

我收到以下错误消息。
至少,您必须为mysqldump指定--connect和--table参数,其他子程序可以在命令行上的“-”后面提供。
如果我删除--query param,它将使用默认查询导出数据,并且工作正常。
我也试过-e参数仍然得到同样的错误。
有什么问题吗?

rhfm7lfc

rhfm7lfc1#

无论何时使用--query属性。在sqoop命令中不能提到--table属性。因为您已经在query参数的from子句中提到了它。
您可以使用下面的命令来使用--query属性

sqoop import --connect jdbc:db2://<IP_ADDR:<PORT>/<DB> --username user_name -P -m 1 --query "Select * from TABLE_NAME WHERE \$CONDITIONS AND ID = '16279320'" --target-dir /user/user_name

其中$条件是强制性的

相关问题