运行环境与所需软件
centOS 6.5 64位
jdk 1.7.0_45 64位
hadoop 2.6.0
hive 0.12.0
mysql-connector-java-5.1.22
mysql的的安装启动与配置
yum install -y mysql-server mysql mysql-devel
安装hive的前提需要mysql的支持,mysql的安装可以参考下面网址:
http://jingyan.baidu.com/article/c74d600079be530f6a595dc3.html?qq-pf-to=pcqq.group
http://jingyan.baidu.com/article/3d69c5518997f8f0cf02d7fd.html?qq-pf-to=pcqq.group
启动mysql
service mysqld start
进入mysql
mysql -uroot -p
密码默认为空,回车进入
配置HIVE元数据库,以及创建用户名,分配网络访问权限(****)
insert into mysql.user(Host,User,Password) values("localhost","hive",password("hive"));
create database hive;
grant all on hive.* to hive@'%' identified by 'hive';
grant all on hive.* to hive@'localhost' identified by 'hive';
grant all on hive.* to hive@'hadoop' identified by 'hive';
flush privileges;
exit
在上面创建完hive用户,以及密码hive之后,登录后建表
mysql -uhive -p
show databases;
use hive;
create table test (name int);
show tables;
drop table test;
这个hive里的表很多是因为运行成功之后出来的,一开始创建的时候什么也没有,不用担心
解压hive
为了统一我将软件都装到hadoop用户下了,环境变量都配置到/etc/profile里了(在这
个文件里配置环境变量的好处是:所有用户都可以使用配置到环境变量的软件。
但是必须用root用户进行配置,注意,解压后得赋权限改文件所属用户)
tar -zxvf apache-hive-0.12.1-bin.tar.gz
mv apache-hive-0.12.1-bin hive
chmod -R 755 hive
chown -R hadoop:hadoop hive
配置环境变量(配置的优点乱,大家如果装了hadoop和java,只配置HIVE的就ok了)
vi /etc/profile(root用户下)
export HIVE_HOME=/home/wyz/hive-0.12.0
export ZOOKEEPER_HOME=/home/wyz/zookeeper-3.4.5
export JAVA_HOME=/home/wyz/jdk1.7.0_71
export HADOOP_HOME=/home/wyz/hadoop-2.6.2
export PATH=$JAVA_HOME/bin:$HIVE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$ZOOKEEPER_HOME/bin:$PATH
配置好后环境变量可以查看一下是否生效
echo $HIVE_HOME
Hive自身配置
根据自己的安装路径,在目录$HIVE_HOME/conf/下执行以下两个改名命令
136 <property>
137 <name>javax.jdo.option.ConnectionDriverName</name>
138 <value>com.mysql.jdbc.Driver</value>
139 <description>Driver class name for a JDBC metastore</description>
140 </property>
160 <property>
161 <name>javax.jdo.option.ConnectionUserName</name>
162 <value>hive</value>
163 <description>username to use against metastore database</description>
164 </property>
166 <property>
167 <name>javax.jdo.option.ConnectionPassword</name>
168 <value>hive</value>
169 <description>password to use against metastore database</description>
170 </property>
2010 <property>
2011 <name>hive.metastore.schema.verification</name>
2012 <value>false</value>
2000 <value>auth</value> (第2000行检查一下改成这个)
顺便核对下这个文件,value的值为空
124 <property>
125 <name>hive.metastore.uris</name>
126 <value></value>
127 <description>Thrift uri for the remote metastore. Used by metast ore client to connect to remote metastore.</description>
128 </property>
配置hive-env.sh
47 # Set HADOOP_HOME to point to a specific hadoop install directory
48 HADOOP_HOME=/home/hadoop/app/hadoop-2.6.0
50 # Hive Configuration Directory can be controlled by:
51 export HIVE_CONF_DIR=/home/hadoop/app/hive/conf
此时配置基本结束,下面运行hadoop启动
start-all.sh
jps
(因为此hadoop版本没有编译,所以会有警告信息,可以忽略)
启动hive
hive 或者 hive -hiveconf hive.root.logger=DEBUG,console