web-dev-qa-db-ja.com

ハイブでデータベースのユーザー名とパスワードを取得する方法

Hiveデータベースに接続するためのjdbcプログラムを作成しています。ユーザー名とパスワードで接続URLに指定してほしい。

HiveQLを使用してユーザー名とパスワードを取得する方法がわかりません。誰かが私を助けることができますか?

Exception in thread "main" Java.sql.SQLNonTransientConnectionException: [DataDirect][Hive JDBC Driver]A value was not specified for a required property: PASSWORD
    at com.ddtek.jdbc.hivebase.ddcp.b(Unknown Source)
    at com.ddtek.jdbc.hivebase.ddcp.a(Unknown Source)
    at com.ddtek.jdbc.hivebase.ddco.b(Unknown Source)
    at com.ddtek.jdbc.hivebase.ddco.a(Unknown Source)
    at com.ddtek.jdbc.Hive.HiveImplConnection.b(Unknown Source)
    at com.ddtek.jdbc.hivebase.BaseConnection.b(Unknown Source)
    at com.ddtek.jdbc.hivebase.BaseConnection.k(Unknown Source)
    at com.ddtek.jdbc.hivebase.BaseConnection.b(Unknown Source)
    at com.ddtek.jdbc.hivebase.BaseConnection.a(Unknown Source)
    at com.ddtek.jdbc.hivebase.BaseDriver.connect(Unknown Source)
    at Java.sql.DriverManager.getConnection(DriverManager.Java:571)
    at Java.sql.DriverManager.getConnection(DriverManager.Java:215)
    at hivejdbcconnection.HiveJdbcConnection.main(HiveJdbcConnection.Java:33)
Java Result: 1
6
PMR

Hiveのユーザー名とパスワードを取得するには、Hive-site.xmlに移動し、javax.jdo.option.ConnectionUserNamejavax.jdo.option.ConnectionPasswordを検索します。これらのプロパティの値は、それぞれHiveのユーザー名とパスワードです。

(デフォルト値は、Hive-default.xmlにあるユーザー名とパスワードのAPPmineです)

場合によっては、Hive-site.xmlにそのようなプロパティがない場合。次に、これらの行をHive-site.xmlに追加します。

<property>
  <name>javax.jdo.option.ConnectionUserName</name>
  <value>hiveuser</value>
</property>
<property>
  <name>javax.jdo.option.ConnectionPassword</name>
  <value>hivepass</value>
</property>
<property>
  <name>javax.jdo.option.ConnectionDriverName</name>
  <value>com.mysql.jdbc.Driver</value>
</property>
<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://localhost:3306/hadoop</value>
</property>

注:mysql forHiveにhadoopという名前のデータベースがあります。そのため、javax.jdo.option.ConnectionURLの値はjdbc:mysql://localhost:3306/hadoopです。

ユーザー名とパスワードを設定または検索したら、次のように使用します。

Connection con = DriverManager.getConnection("jdbc:Hive2://localhost:10000/default", "hiveuser", "hivepass");

defaultの代わりにHive database nameを使用してください。それが役に立てば幸い!!!!

8
Rajesh N

Hiveのデフォルトのユーザー名はHive

hiveserver2には以下の接続文字列を使用してください

"jdbc:Hive2://localhost:10000/default", "Hive", ""

hiveserver1のデフォルトは空ですが、hiveserver2は空のユーザー名とパスワードでも機能します。

jdbc:Hive://localhost:10000/default

ドライバー名:org.Apache.hadoop.Hive.jdbc.HiveDriver

ユーザー名とパスワードが空です

リンクを読む Beelineを使用してHiveに接続する

0
Sravan K Reddy