sqoop错误:HADOOP_ORG.APACHE.sqoop.sqoop_用户:错误替换
为什么sqoop会抛出这个错误,如何修复它 我已经检查了hadoop-functions.sh中的第2326行,功能是:sqoop错误:HADOOP_ORG.APACHE.sqoop.sqoop_用户:错误替换,hadoop,sqoop,Hadoop,Sqoop,为什么sqoop会抛出这个错误,如何修复它 我已经检查了hadoop-functions.sh中的第2326行,功能是: hduser@kubuntu17:~$ sqoop version /usr/local/hadoop/libexec/hadoop-functions.sh: line 2326: HADOOP_ORG.APACHE.SQOOP.SQOOP_USER: bad substitution /usr/local/hadoop/libexec/hadoop-functions.s
hduser@kubuntu17:~$ sqoop version
/usr/local/hadoop/libexec/hadoop-functions.sh: line 2326: HADOOP_ORG.APACHE.SQOOP.SQOOP_USER: bad substitution
/usr/local/hadoop/libexec/hadoop-functions.sh: line 2421: HADOOP_ORG.APACHE.SQOOP.SQOOP_OPTS: bad substitution
2017-11-04 03:34:05,230 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6
Sqoop 1.4.6
git commit id c0c5a81723759fa575844a0a1eae8f510fa32c25
Compiled by root on Mon Apr 27 14:38:36 CST 2015
hduser@kubuntu17:~$
如果您对此有任何想法,我们将不胜感激。您尝试过什么?你有什么假设吗?是谷歌先做的,没有发现类似的案例。接下来,通过查看两个问题行(sqoop版本命令结果),打开hadoop_functions.sh并检查行号2326和2421。看起来“uvar”变量是问题元素,但不确定如何继续解决此问题。顺便说一句,sqoop运行良好,我可以将数据从MySql导入到Hive中。你们有什么版本的Hadoop?您是否验证了Sqoop支持它?您是否找到了解决方案?@BrunoWego此问题已在中修复。您可以在GitHub()找到最新版本。
function hadoop_verify_user_perm
{
declare program=$1
declare command=$2
declare uvar
uvar=$(hadoop_build_custom_subcmd_var "${program}" "${command}" USER)
if [[ -n ${!uvar} ]]; then
if [[ ${!uvar} != "${USER}" ]]; then
hadoop_error "ERROR: ${command} can only be executed by ${!uvar}."
exit 1
fi
fi
return 0
}