存在密码问题的sqoop作业

pkln4tw6  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(301)

sqoop作业总是在cli中提示输入密码。为了避免这种情况,有人说属性sqoop.metastore.client.record.password应该设置为true。但是在任何地方都有人说我需要在sqqop\u site.xml中更改这个值。不管怎样,我可以将这个值单独设置为一个作业。我尝试创建一个如下的作业,但sqoop未能创建它

sqoop job --create TEST -D sqoop.metastore.client.record.password=true -- import \
--connect jdbc:netezza://xx.xxx.xx.xxx/database \
--username username \
--password password \
--table tablename \
--split-by key \
--hcatalog-database hivedatabase \
--hcatalog-table hivetable \
--hcatalog-storage-stanza 'STORED as ORC TBLPROPERTIES('orc.compress'='NONE')' \
-m 100

错误:

Warning: /usr/iop/4.1.0.0/sqoop/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
16/06/17 07:10:08 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6_IBM_20
16/06/17 07:10:08 ERROR tool.BaseSqoopTool: Error parsing arguments for job:
16/06/17 07:10:08 ERROR tool.BaseSqoopTool: Unrecognized argument: -D
16/06/17 07:10:08 ERROR tool.BaseSqoopTool: Unrecognized argument: sqoop.metastore.client.record.password=true

谁能帮我一下吗。我需要在cli中运行一个没有提示密码的作业。

rt4zxlrg

rt4zxlrg1#

您可以将密码保存在文件中,并使用参数--password file指定此文件的路径。

--password-file  'Set path for a file containing the authentication password'

然后,sqoop将从文件中读取密码,并使用安全方法将其传递给mapreduce集群,而不会在作业配置中公开密码。

相关问题