下载hive-0.11.0:
zzk1@zzk1-vm1:~$ wget http://apache.dataguru.cn/hive/hive-0.11.0/hive-0.11.0-bin.tar.gz
解压:
zzk1@zzk1-vm1:~$ tar xzvf hive-0.11.0-bin.tar.gz
设置环境变量:
zzk1@zzk1-vm1:~$ vi .bash_profile
HIVE_HOME=/home/zzk1/hive-0.11.0-bin
CLASSPATH=$CLASSPATH:$HIVE_HOME/lib
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$MAHOUT_HOME/conf:$MAHOUT_HOME/bin:$HIVE_HOME/bin
修改hive的配置文件:
zzk1@zzk1-vm1:~/hive-0.11.0-bin$ cd conf
zzk1@zzk1-vm1:~/hive-0.11.0-bin/conf$ cp hive-env.sh.template hive-env.sh
zzk1@zzk1-vm1:~/hive-0.11.0-bin/conf$ cp hive-default.xml.template hive-site.xml
编辑hive-env.sh,找到以下2项,进行设置:
HADOOP_HOME=/home/zzk1/hadoop-1.2.1
export HIVE_CONF_DIR=/home/zzk1/hive-0.11.0-bin/conf
如果报以下错误,需要修改hadoop里的hadoop-env.sh
zzk1@zzk1-vm1:~/hadoop-1.2.1/conf$ vi hadoop-env.sh
# Extra Java CLASSPATH elements. Optional.
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/home/zzk1/hadoop-1.2.1/myclass
运行hive,新建表abc。运行前启动hadoop集群
create table abc (a string,b string);
查看hive文件目录:
zzk1@zzk1-vm1:~/hadoop-1.2.1$ bin/hadoop fs -ls /user/hive
Warning: $HADOOP_HOME is deprecated.
Found 1 items
drwxr-xr-x - zzk1 supergroup 0 2013-11-05 16:17 /user/hive/warehouse
zzk1@zzk1-vm1:~/hadoop-1.2.1$ bin/hadoop fs -ls /user/hive/warehouse
Warning: $HADOOP_HOME is deprecated.
Found 1 items
drwxr-xr-x - zzk1 supergroup 0 2013-11-05 16:17 /user/hive/warehouse/abc
可以看到新建的表abc
连接myql安装:
更改hive里的配置文件hive-site.xml
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/metastore_db?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<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>APP</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>mine</value>
<description>password to use against metastore database</description>
</property>
lib文件夹缺少mysql的连接器mysql-connector-java-5.1.25-bin.jar,
下载地址http://download.csdn.net/detail/xqj198404/6338973
zzk1@zzk1-vm1:~$ mv mysql-connector-java-5.1.25-bin.jar hive-0.11.0-bin/lib
在Ubuntu下安装MySQL数据库:
sudo apt-get install mysql-server
注:
如果不是ubuntu,需要下载MySQL-client-5.5.23-1.linux2.6.i386.rpm和MySQL-server-5.5.23-1.linux2.6.i386.rpm,然后执行rpm –ivh rpm文件(两个rpm文件可以在新浪免费共享资料里下载到)。
首先用root登陆给hive用户(hive配置文件配置的用户和密码)赋予权限
$mysql –h localhost -u root -p
mysql> GRANT ALL PRIVILEGES ON *.* TO APP@localhost IDENTIFIED BY "mine";
Query OK, 0 rows affected (0.00 sec)
在mysql里用命令行查看映射的数据库metastore_db:
zzk1@zzk1-vm2:~$ mysql -u root -p -D metastore_db
在hive里新建表hivetable 建表语句create table hivetable(a1 string,b1 string); ,然后切换到mysql里执行
Select * from tbls;
可看到新建的表。