apache-hive-1.2.2安裝教程
1、安裝前提
1、hadoop叢集(偽分散式也可以)
2、mysql資料庫
這裡假設hadoop叢集和mysql資料庫都安裝好了。
2、配置mysql資料庫
1、建立hive元資料存放庫
mysql> create database hivemeta character set = latin1;
Query OK, 1 row affected (0.00 sec)
2、建立hive資料庫使用者
mysql> grant all on hivemeta.* to [email protected]'%' identified by 'hiveuser';
Query OK, 0 rows affected (0.00 sec)
mysql> grant all on hivemeta.* to [email protected]'localhost' identified by 'hiveuser';
Query OK, 0 rows affected (0.00 sec)
mysql> grant all on hivemeta.* to [email protected]'hbaselx' identified by 'hiveuser';
Query OK, 0 rows affected (0.05 sec)
mysql> use mysql;
Database changed
mysql> select user,host,password from user where user='hiveuser';
+----------+-----------+-------------------------------------------+
| user | host | password |
+----------+-----------+-------------------------------------------+
| hiveuser | % | *9B0A19544652EC0C7748682AB93554C85080C326 |
| hiveuser | localhost | *9 B0A19544652EC0C7748682AB93554C85080C326 |
+----------+-----------+-------------------------------------------+
2 rows in set (0.00 sec)
mysql> exit
Bye
[[email protected] ~]$ mysql -uhiveuser -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 5.1.71 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
3、配置hive
1、解壓
[[email protected] ~]$ ls
apache-hive-1.2.2-bin.tar.gz app hadoop-2.6.5.tar.gz jdk-8u172-linux-x64.tar.gz
[[email protected] ~]$ tar -zxvf apache-hive-1.2.2-bin.tar.gz -C app
2、複製配置檔案
[[email protected] ~]$ cd app
[[email protected] app]$ ls
apache-hive-1.2.2-bin hadoop-2.6.5 jdk1.8.0_172
[[email protected] app]$ cd apache-hive-1.2.2-bin/conf
[[email protected] conf]$ ls
beeline-log4j.properties.template hive-env.sh.template hive-log4j.properties.template
hive-default.xml.template hive-exec-log4j.properties.template ivysettings.xml
[[email protected] conf]$ cp hive-default.xml.template hive-site.xml
[[email protected] conf]$ cp hive-env.sh.template hive-env.sh
[[email protected] conf]$ cp hive-log4j.properties.template hive-log4j.properties
[[email protected] conf]$ cp hive-exec-log4j.properties.template hive-exec-log4j.properties
[[email protected] conf]$
3、在hdfs上建立hive需要的目錄
[[email protected] conf]$ hdfs dfs -mkdir -p /hive/warehouse
18/06/14 10:54:21 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
[[email protected] conf]$ hdfs dfs -mkdir -p /hive/log
18/06/14 10:54:28 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
[[email protected] conf]$ hdfs dfs -mkdir -p /hive/tmp
18/06/14 10:54:33 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
[[email protected] conf]$
[[email protected] apache-hive-1.2.2-bin]$ hdfs dfs -chmod -R 777 /hive
4、在本地建立如下目錄
[hadoop@hbaselx apache-hive-1.2.2-bin]$ mkdir log
[hadoop@hbaselx apache-hive-1.2.2-bin]$ mkdir exec
[hadoop@hbaselx apache-hive-1.2.2-bin]$ mkdir downloadedsource
5、配置hive-site.xml
hive-site.xml檔案裡配置項很多,我們只需要修改下面這些即可。
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hiveuser</value>
<description>Username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hiveuser</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.16.66:3306/hivemeta</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>hive.metastore.uris</name>
<value/>
<description>Thrift URI for the remote metastore. Used by metastore client to connect to remote metastore.</description>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/hive/warehouse</value> //hive資料檔案在hdfs上存放目錄
<description>location of default database for the warehouse</description>
</property>
<property>
<name>hive.exec.local.scratchdir</name>
<value>/home/hadoop/app/apache-hive-1.2.2-bin/exec</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>/home/hadoop/app/apache-hive-1.2.2-bin/downloadedsource</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
6、配置hive-exec-log4j.properties和hive-log4j.properties
修改hive.log.dir為:
hive.log.dir=/home/hadoop/app/apache-hive-1.2.2-bin/log
7、拷貝mysql連線驅動包到${HIVE_HOME}/lib
[hadoop@hbaselx ~]$ cp mysql-connector-java-5.1.38.jar app/apache-hive-1.2.2-bin/lib
4、啟動hive metastore服務
[hadoop@hbaselx bin]$ ./hive --service metastore &
[1] 25981
[hadoop@hbaselx bin]$ Starting Hive Metastore Server
[hadoop@hbaselx bin]$
5、啟動 hive cli
[[email protected] bin]$ ./hive
Logging initialized using configuration in file:/home/hadoop/app/apache-hive-1.2.2-bin/conf/hive-log4j.properties
hive> create table t1
> (id int,
> name string);
OK
Time taken: 1.665 seconds
hive> show tables;
OK
t1
Time taken: 0.236 seconds, Fetched: 1 row(s)
hive> select * from t1;
OK
Time taken: 0.672 seconds
安裝hive遇到的問題
問題1:
[[email protected] bin]$ ./hive
Logging initialized using configuration in file:/home/hadoop/app/apache-hive-1.2.2-bin/conf/hive-log4j.properties
[ERROR] Terminal initialization failed; falling back to unsupported
java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected
at jline.TerminalFactory.create(TerminalFactory.java:101)
at jline.TerminalFactory.get(TerminalFactory.java:158)
at jline.console.ConsoleReader.<init>(ConsoleReader.java:229)
at jline.console.ConsoleReader.<init>(ConsoleReader.java:221)
at jline.console.ConsoleReader.<init>(ConsoleReader.java:209)
at org.apache.hadoop.hive.cli.CliDriver.setupConsoleReader(CliDriver.java:787)
at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:721)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:681)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:621)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
Exception in thread "main" java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected
at jline.console.ConsoleReader.<init>(ConsoleReader.java:230)
at jline.console.ConsoleReader.<init>(ConsoleReader.java:221)
at jline.console.ConsoleReader.<init>(ConsoleReader.java:209)
at org.apache.hadoop.hive.cli.CliDriver.setupConsoleReader(CliDriver.java:787)
at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:721)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:681)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:621)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
解決方式:
把 ${HADOOP_HOME}/share/hadoop/yarn/lib/的 jline 刪了,換成hive自帶的2.12版本的
rm ${HADOOP_HOME}/share/hadoop/yarn/lib/jline-0.9.94.jar
cp ${HIVE_HOME}/lib/jline-2.12.jar ${HADOOP_HOME}/share/hadoop/yarn/lib/
問題2:
[[email protected] bin]$ ./hive
Logging initialized using configuration in file:/home/hadoop/app/apache-hive-1.2.2-bin/conf/hive-log4j.properties
hive> create table t1(
> id int,
> name string
> );
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:For direct MetaStore DB connections, we don't support retries at the client level.)
解決方式:
資料庫的字符集不對,應該是latin1。
mysql> show create database hivemeta\G
*************************** 1. row ***************************
Database: hivemeta
Create Database: CREATE DATABASE `hivemeta` /*!40100 DEFAULT CHARACTER SET utf8 */
1 row in set (0.00 sec)
mysql> drop database hivemeta;
Query OK, 22 rows affected (0.16 sec)
mysql> create database hivemeta;
Query OK, 1 row affected (0.00 sec)
mysql> show create database hivemeta\G
*************************** 1. row ***************************
Database: hivemeta
Create Database: CREATE DATABASE `hivemeta` /*!40100 DEFAULT CHARACTER SET latin1 */
1 row in set (0.00 sec)
然後重新啟動metastore服務即可。
相關推薦
apache-hive-1.2.2安裝教程
1、安裝前提 1、hadoop叢集(偽分散式也可以) 2、mysql資料庫 這裡假設hadoop叢集和mysql資料庫都安裝好了。 2、配置mysql資料庫 1、建立hive元資料存放庫 mysql> create database hiv
apache-hive-1.2.1-bin 安裝
apache-hive-1.2.1-bin 安裝 更多資源:https://github.com/opensourceteams 技能標籤 下載apache hive 安裝包 進行apache-hive-1.2.1-bin.tar.gz安裝 配置mysql儲存
【轉載】Hadoop 2.7.3 和Hbase 1.2.4安裝教程
啟動 運行 property new rop net 文本文 .tar.gz cor 轉載地址:http://blog.csdn.net/napoay/article/details/54136398 目錄(?)[+] 一、機器環境
apache-hive-1.2.1和hbase-1.2.2的整合(偽分散式)
我的機器環境: hadoop2.6.0 的偽分散式 Hbase偽分散式環境 參考:hbase權威指南P240 1.啟動hadoop和hbase 2.下載apache-hive-1.2.1 3.修改hive中conf下的hive-env.sh # Set HADOOP_H
Linux學習筆記4-CentOS7中redis3.2.9安裝教程
錯誤 img make .gz 需要 down images red pre redis下載地址:http://www.redis.cn/download.html 1、將下載過來的redis-3.2.9.tar.gz文件復制到/usr/local文件夾下 2、tar x
zookeeper3.4.5+Hbase1.2.6安裝教程
使用 4.5 命令 保持 2.6 完成後 epp 進入 查看進程 說明:在安裝zookeeper+Hbase之前,我們應該已經將hadoop集群搭建好了(三個節點),並且驗證啟動成功。因為HBase是一種構建在HDFS之上的分布式、面向列的存儲系*統。 zookeeper安
Windows下Redis3.2.10安裝教程
oct ria sde ase filename 網站 nat lan x64 1、下載地址; GitHub地址:https://github-production-release-asset-2e65be.s3.amazonaws.com/3402186/bb1d10fc
erdas9.2破解安裝教程
1、 首先,開啟erdas安裝包,雙擊【setup.exe】(如圖),進行程式的安裝!程式雙擊後進行解壓。。。 2、 解壓完成後進入安裝步驟:前面的步驟和一般都的軟體步驟類似,點選next,同意協議繼續下一步next,到更改安裝目錄的階段 3、 在這裡改軟體安裝路徑,
ubuntu16.04 + opencv3.2.0 安裝教程
0、安裝前準備: (1)安裝編譯工具 sudo apt-get install build-essential -y (2)安裝依賴包 sudo apt-get install libgtk2.0-dev pkg-config libavcodec-dev libavformat-d
Hive1.2.2詳細安裝教程
Hive是Hadoop組態中的資料倉庫,本質是將sql語句轉換為MapReduce任務,所以Hive只是一個解析引擎,它的資料儲存在hdfs上,元資料資訊依託mysql資料庫。在這裡有一個小問題,為什麼需要mysql關係資料庫,因為hdfs儲存的只是資料資訊,而建表的時候是需要列名來查詢的,因此要用
最新版spark-2.2.0安裝教程
1.jdk的安裝;(java1.8) 2.hadoop安裝;(hadoop2.7.2) 3.scala安裝;(scala2.11.8) 4.spark安裝。(spark2.2.0) 0.環境:mac OS X 10.12 1.jdk的安裝:安裝java
hive部署安裝(apache-hive-1.1.0)
http://blog.csdn.net/an342647823/article/details/46048403 以下操作在hdpsrc3 節點上操作 一,下載安裝包 1,下載hive http://mirrors.hust.edu.cn/apache/ 得到
hadoop入門第七步---hive部署安裝(apache-hive-1.1.0)
以下操作在hdpsrc3 節點上操作 一,下載安裝包 1,下載hive http://mirrors.hust.edu.cn/apache/ 得到apache-hive-1.1.0.tar.gz ,放到該目錄下 /home/hdpsrc/ mysql-client
Kali 2.0 安裝教程
域名設置 操作 向導 中文 裝系統 無法啟動 命名 個人 重啟 本文適合KALI初學者,將詳細介紹Kali Linux 2.0的安裝過程。 首先我們到KALI的官網下載鏡像,大家可以自己選擇下載32或64位的KALI 2.0系統。 KALI 官網:https://
物聯網模擬 ns-allinone-2.35 安裝教程 ubuntu16.04下安裝 與使用
1. 首先 安裝一個虛擬機器 然後把Ubuntu裝進去 ubuntu16.04 官網地址https://www.ubuntu.com/download/server 2.下載ns-allinone-2.35 最好在官網下載 https://www.isi.edu/nsnam/ns/ns-build.htm
Apache Hive 基本理論與安裝指南
scratch 建表 username apach 而且 use res isp 自動 一、Hive的基本理論 Hive是在HDFS之上的架構,Hive中含有其自身的組件,解釋器、編譯器、執行器、優化器。解釋器用於對腳本進行解釋,編譯器是對高級語言代碼進行編譯,執行器
Hive/Hbase/Sqoop的安裝教程
啟動 get Coding 如果 path master 安裝教程 targe name Hive/Hbase/Sqoop的安裝教程 HIVE INSTALL 1.下載安裝包:https://mirrors.tuna.tsinghua.edu.cn/apache/hiv
1.kafka下載安裝教程以及中文手冊連結集錦
1.進入kafka官網進行下載,kafka官網路徑如下: http://kafka.apache.org/downloads.html 顯示介面如下所示: 我們進行下載已經編譯好的 下載下面已經編譯好了的 因為我的scala是2.12.7版本,因此下載的是2.12的k
mysql5.1.73編譯安裝教程-改進後的
mysql 5.1.73官方下載地址 http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.73.tar.gz md5:887f869bcc757957067b9198f707f32f 1 md
Julia Pro 1.0 下載安裝教程
千呼萬喚的Julia Pro 1.0可以下載安裝了. JuliaPro版本相當於Anconda 之於 Python, Julia Pro有很多模組, 對於一些常規的模組都有包含, 不用手動下載, 更加方便. 所以我一直等到Julia Pro下線, 才將0.6版本