1. 程式人生 > >遠端連線Hive配置

遠端連線Hive配置

1、執行HiveServer2和Beeline
   HiveServer2(在Hive 0.11中引入)有它自己的CLI,叫做Beeline.  
   HiveCLI現在不提倡使用,而是支援Beeline,因為HiveCLI缺乏對多使用者、安全以及其它HiveServer2能力的支援.

2,在啟動hiveserver2之前,需要先做:

    1,1) (2.1.0不需要)將commons-math3-3.6.1.jar,拷貝到$HIVE_HOME/lib/目錄下、

    2,在hive-site.xml中,配置如下內容:
          <!--配置hiveserver2主機(這裡最好是配置ip地址,以便於從Windows連線)-->

<property>
		<name>hive.server2.thrift.bind.host</name>
		<value>master</value>
		<description>Bind host on which to run the HiveServer2 Thrift service.</description>
</property>

    <!--配置beeline遠端客戶端連線時的使用者名稱和密碼。這個使用者名稱要在對應的hadoop的配置檔案core-site.xml中也配置-->  

 <property>
		<name>hive.server2.thrift.client.user</name>
		<value>hduser</value>
		<description>Username to use against thrift client. default is 'anonymous'</description>
</property>
<property>
		<name>hive.server2.thrift.client.password</name>
		<value>hduser</value>
		<description>Password to use against thrift client. default is 'anonymous'</description>
</property>

 3) 到hadoop的配置檔案core-site.xml檔案中,增加如下兩項配置(叢集中三臺機器都要做):

    「會發生一個異常:Error: Could not open client transport with JDBC Uri: jdbc:hive2://172.16.45.128:10000/default: Failed to open new session: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User: caozhan is not allowed to impersonate master (state=08S01,code=0)」

    這兒你會發現 標黑字型 不被允許,這兒顯示 caozhan ,那麼我們就在叢集中設定這段程式碼;

<!--所以這兒設定 caozhan.hosts   如果是其他user 不被允許  那就設定成 其他使用者名稱.hosts-->
<property>
		<name>hadoop.proxyuser.caozhan.hosts</name>                                               
		<value>*</value>
</property>
<property>
        <name>hadoop.proxyuser.caozhan.groups</name>
		<value>*</value>
</property>

    如果還不行 就加一個:    

<property>
                <name>hadoop.native.lib</name>
                <value>false</value>
</property>

----------------開始執行------------------------

從shell中執行HiveServer2和Beeline:

    $ $HIVE_HOME/bin/hiveserver2  (或者hive --service hiveserver2)  //開了之後

    開了另開一個終端視窗:

       $ $HIVE_HOME/bin/beeline -u jdbc:hive2://192.168.123.137:10000/default -n master -p master
         0: jdbc:hive2://> show databases;
         0: jdbc:hive2://> show tables;

退出 beeline:

    0: jdbc:hive2://> !quit

  2、配置視覺化客戶端工具
    以dbvis為例。(以下操作在Windows系統下)
    1、下載壓縮包:dbvis_windows-x64_9_5_6.zip
    2、解壓縮到指定目錄
    3、將以下兩個jar包拷貝到DbVisualizer\jdbc目錄下:
         hadoop-common-2.7.2.jar   (位於$HADOOP_HOME/share/hadoop/common/下)
         hive-jdbc-2.1.0-standalone.jar  (位於$HIVE_HOME/jdbc/下)
    3、啟動dbvis.exe程式
    4、建立hive連線:指定相關引數