【问题标题】:sqoop hadoop-mapreduce does not existsqoop hadoop-mapreduce 不存在
【发布时间】:2015-04-16 15:02:52
【问题描述】:

我在 sqoop 上运行导入命令,但遇到以下问题。有人可以帮我解决这个问题吗?

错误:/usr/local/sqoop-1.4.5.bin__hadoop-2.0.4-alpha/bin/../../hadoop-mapreduce 不存在! 请将 $HADOOP_MAPRED_HOME 设置为 Hadoop MapReduce 安装的根目录。

我的 bashrc:

export JAVA_HOME=$(/usr/libexec/java_home)
export HADOOP_HOME=/usr/local/Cellar/hadoop/2.6.0/libexec
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME
export HADOOP_PID_DIR=$HADOOP_HOME/pids
export HADOOP_LOG_DIR=$HADOOP_HOME/logs
export HADOOP_HOME_WARN_SUPPRESS=true
export HADOOP_PREFIX=$HADOOP_HOME
export PATH=.:$JAVA_HOME/bin:$HADOOP_HOME/bin:/usr/local/sqoop/bin:$PATH

【问题讨论】:

    标签: hadoop sqoop


    【解决方案1】:

    您在 PATHerror 中的 Sqoop 安装不匹配。

    导出 PATH=.:$JAVA_HOME/bin:$HADOOP_HOME/bin:/usr/local/sqoop/bin:$PATH

    错误:/usr/local/sqoop-1.4.5.bin__hadoop-2.0.4-alpha/bin/../../hadoop-mapreduce 不存在!请将 $HADOOP_MAPRED_HOME 设置为 Hadoop MapReduce 安装的根目录。

    1.您的PATH 说sqoop 位于/usr/local/sqoop,但您的错误将sqoop 位置指向/usr/local/sqoop-1.4.5...。为 sqoop 和 hadoop home 提供正确的位置。

    2.HADOOP_MAPRED_HOME 导出到sqoop.sh(在$SQOOP_HOME/bin 中找到)。现在执行,sqoop import 命令。

    【讨论】:

    • 我在 /usr/local/sqoop 创建了一个用于安装 sqoop 的软链接。 Sqoop home 和 Hadoop home 如上所述,并且工作正常。我可以使用 sqoop 运行列表命令。但导入查询失败并出现上述错误。
    • 这条路径/usr/local/sqoop-1.4.5.bin__hadoop-2.0.4-alpha/bin/../../hadoop-mapreduce 是否存在?你能发布你的 sqoop 导入命令吗?
    • 默认情况下,sqoop 根据文档查看位置 /usr/local/sqoop-1.4.5.bin__hadoop-2.0.4-alpha/bin/../../hadoop-mapreduce。但如果 HADOOP_MAPRED_HOME 设置正确,它应该覆盖默认搜索位置。
    • sqoop import --connect jdbc:mysql://stagedb/patientimport?zeroDateTimeBehavior=round --username appsUser --password XXX --escaped-by \\ --fields-terminated-by '\ t' --query "SELECT * FROM patientimport where \$CONDITIONS limit 100" --num-mappers 1 --direct --target-dir /user/paas/patientimport
    • 尝试在sqoop.sh中导出HADOOP_MAPRED_HOME。另外,sqoop import --connect jdbc:mysql://stagedb/patientimport... 命令对您有用吗?大多数情况下,命令看起来像sqoop import --connect jdbc:mysql://localhost:3306/dbname --username...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多