hive搭建指南

使用的ubuntu版本:12.04
使用的hive版本:0.8.1
使用都mysql版本:5.5.47
使用都mysql-connector-java版本:5.0.8


(一)安装mysql
参考文章:http://www.linuxidc.com/Linux/2013-01/78716.htm

1 在浏览器中输入http://www.mysql.com/downloads/,进入mysql的下载中心,选择MySQL Community Server链接,选择32位的,下载后得到文件mysql-5.5.47-linux2.6-i686.tar.gz,然后将其解压,并重命名为mysql,使用mv命令将其移到/usr/local目录下:
sudo mv ~/下载/mysql  /usr/local/

2 先要创建的一个名为mysql的用户组和用户,来承载mysql数据库的运行,使用如下命令:
创建用户组:
sudo groupadd mysql
在创建的用户组中创建一个用户:
sudo useradd -r -g mysql mysql

3 接着进入mysql目录,修改mysql目录的拥有者,为mysql用户:
进入目录:
cd /usr/local/mysql
修改目录的拥有者:
sudo chown -R mysql .
sudo chgrp -R mysql .
这里的点“.”代表的就是当前目录,选项-R表示递归当前目录及其子目录。

4 安装mysql,执行命令:
sudo scripts/mysql_install_db --user=mysql
在Ubuntu 12.04下安装mysql 5.5.28版本执行此命令时,会提示如下错误的信息:
./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
这说明还要安装一个libaio的依赖库,执行如下命令:
sudo apt-get install libaio-dev
手动安装参考:http://blog.163.com/yumin_wang@126/blog/static/3629355020113995036302/

5 安装好mysql后,就可以试着启动它,使用如下命令:
sudo ./support-files/mysql.server start
同样重启和停止,只需要将上面命令的start改为restart或stop。

6 启动完mysql后,我们接着可以测试一下,使用“./bin/mysql”命令来进入mysql数据库的控制台,执行SQL命令。

7 使用“./bin/mysql”命令来进入mysql数据库的控制台后,输入:
GRANT ALL PRIVILEGES ON *.* TO 'hive'@'localhost' IDENTIFIED BY 'hive' WITH GRANT OPTION;
FLUSH PRIVILEGES;
这是当hive访问mysql时,允许用户hive从ip为localhost的主机连接到mysql服务器,并使用hive作为密码(用户名和密码自己根据情况设置)
否则hive执行show tables时会报错误:
FAILED: Error in metadata: javax.jdo.JDOFatalDataStoreException: Access denied for user 'hive'@'localhost' (using password: YES)
NestedThrowables:
java.sql.SQLException: Access denied for user 'hive'@'localhost' (using password: YES)

(二)安装hive
参考文章:
http://blog.csdn.net/yfkiss/article/details/7721329
http://www.cnblogs.com/linjiqin/archive/2013/03/04/2942402.html
http://www.cnblogs.com/viviman/archive/2013/01/14/2860201.html

1 启动hadoop,在hdfs上建目录:
$ hadoop fs -mkdir /tmp 
$ hadoop fs -mkdir /user/hive/warehouse 
并添加权限:
$ hadoop fs -chmod g+w   /tmp 
$ hadoop fs -chmod g+w   /user/hive/warehouse

2 解压hive:
$ tar -zxvf hive-0.8.1.tar.gz

3 将hive文件夹复制到相应目录(比如/usr/local/hive),并进入hive文件夹都上一级目录,给hive授权:
sudo chown -R hadoop:hadoop hive

4 添加hive环境变量
/etc/profile
/home/hadoop/.bashrc
/usr/local/hive/conf/hive-env.sh
/usr/local/hive/bin/hive-conf.sh
在以上4个文件中添加如下内容:
JAVA_HOME=/usr/java/jdk1.6.0_11
HADOOP_INSTALL=/usr/local/hadoop
HIVE_HOME=/usr/local/hive
PATH=$JAVA_HOME/bin:$PATH:$HADOOP_INSTALL/bin:$HIVE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$HIVE_HOME/lib
export JAVA_HOME
export HADOOP_INSTALL
export HIVE_HOME
export PATH
export CLASSPATH

5 配置 hive-default.xml
在“/usr/local/hive/conf”目录下只有一个“hive-default.xml.template”,所以我们要复制“hive-default.xml.template”,并命名为“hive-default.xml”,同时还要把文件的授权给 hadoop 用户。
cp hive-default.xml.template hive-default.xml
chown -R hadoop:hadoop hive-default.xml

6 生成并配置hive-site.xml
sudo vi hive-site.xml
输入:
<?xml version="2.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

<property>
        <name>hive.metastore.local</name>
        <value>true</value>
</property>

<property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
</property>

<property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
</property>

<property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>hive</value>
</property>

<property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>hive</value>
</property>

</configuration>

最后chown -R hadoop:hadoop hive-site.xml

7 将usr/local/hive/conf目录下的其他template文件复制为去掉后缀的文件,并把文件的授权给 hadoop 用户。

8 解压mysql jdbc包:
tar -zxvf mysql-connector-java-5.0.8.tar.gz
将mysql-connector-java-5.0.8-bin.jar拷贝到hive lib目录下:
cp mysql-connector-java-5.0.8/mysql-connector-java-5.0.8-bin.jar  ./lib

9 启动hive
进入hive目录,输入 ./bin/hive,其他操作如show tables;退出输入exit;

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值