如何更改Hive-beeline历史文件位置

时间:2017-11-21 15:12:19

标签: hadoop configuration hive command-line-arguments beeline

我使用beeline连接到HIVE服务器。 登录用户无法访问其默认的HOME目录。

因此,登录后我手动将ENV VAR HOME更改为我有权访问的位置。

然而,直线并不尊重我所设置的HOME ENV变量。

有没有办法可以将HISTORY FILE位置设置为/home/{user}/.beeline以外的其他位置

1 个答案:

答案 0 :(得分:1)

以下是定义beeline历史记录文件位置的代码:

  /**
   * The save directory if HOME/.beeline/ on UNIX, and
   * HOME/beeline/ on Windows.
   */
  public File saveDir() {
    String dir = System.getProperty("beeline.rcfile");
    if (dir != null && dir.length() > 0) {
      return new File(dir);
    }

    File f = new File(System.getProperty("user.home"),
        (System.getProperty("os.name").toLowerCase()
            .indexOf("windows") != -1 ? "" : ".") + "beeline")
        .getAbsoluteFile();
    try {
      f.mkdirs();
    } catch (Exception e) {
    }
    return f;
  }

您只能通过beeline JVM选项运行-Duser.home=/new/home/dir来更改Hive-beeline历史记录文件位置。