$cat > import.txt
import
--connect
jdbc:mysql://localhost/hadoopdb
--username
hadoop
-password
abc
在txt文件中,我将jdbc url、用户名和密码保存在一个文本文件中,当我调用sqoop命令时,我按如下方式调用它:
sqoop --options-file /user/cloudera/import.txt --table employee
但是我想从多个数据库导入到HDFS。对于多个数据库,我应该如何处理相同的问题?我试着搜索相同的,但没有找到任何适当的资源。有人能帮我吗?
发布于 2019-07-10 03:16:54
我通过编写一个带有多个sqoop语句的shell脚本实现了这一点。每个作业一条sqoop语句。您可以让shell脚本中的每个语句引用它自己的选项文件。
发布于 2019-07-31 17:11:42
您可以通过参数化每个字段来为sqoop操作创建workflow.xml,例如import --connect jdbc:mysql://localhost/hadoopdb
--username hadoop
-password
abc
--connect $(connection_string) --用户名$(user_name) --密码文件(password_file_path) --表$(table_name)
并为job.properties文件中的每个变量赋值,并通过Oozie命令运行它: oozie job -oozie http://XXXX.XX.iroot.adidom.com:XXXX/oozie -config job.properties -run您也可以通过coordinator.xml调度它
谢谢,
https://stackoverflow.com/questions/56948719
复制相似问题