Hive的安装
Hive的安装相对比较简单,只需修改几个配置就行。Hive自动了元数据库,但使用不方便,因为自带的数据库如果进入hive shell的路径不一致,就看不到对应的表,如从/home进入hive建的表,从/home/hadoop,路径进入hive则看不到刚才建的表,所有建议单独安装数据库作为元数据库,我安装了mysq数据库,作为Hive的元数据库。
1、安装myslq,最好采用yum或apt-get的方式安装,不同的平台的采取不同方式,这样可以省去很多麻烦,避免了解决依赖包的问题。
安装完myslq之后,需要做一点配置。
设置密码:
MySQL在刚刚被安装的时候,它的root用户是没有被设置密码的。首先来设置MySQL的root密码。
[root@sample ~]# mysql -u root ← 用root用户登录MySQL服务器
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2 to server version: 4.1.20
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>grant all on mysql.* to 'root'@'localhost' identified by 'password';
之后 就可以通过密码登录mysql了。
设置远程访问:
首先,在MySQL服务器上本地登录,使用下面的命令登录:
# mysql-u root -p
然后,使用权限管理命令将所有表的所有权限授予用户,下面继续以root为例(需要注意的是用户名root,被授权主机%,登录密码password需要被单引号括起来):
mysql> grant all privileges on *.* to 'root’@'%’ identified by 'password';
2、tar 解压hive压缩包
修改配置文件
hive的配置文件放在HIVE_HOME/conf目录下,我们需要修改hive-env.sh和hive-site.xml这两个文件。
ls之 后发现并没有这两个文件,但是有hive-env.sh.template,hive-default.xml.template,我们须复制这两个文 件,并分别命名为hive-env.sh,hive-site.xml。
一般还有一个hive-default.xml文件,同样由hive- default.xml.template复制而来。hive-default.xml是默认配置,hive-site.xml是个性化配置,将会覆盖 hive-default.xml配置。
a、修改hive-env.sh配置文件
将export HADOOP_HEAPSIZE=1024前面的‘#’去掉,当然可以根据自己的环境对这个默认的1024进行优化;
将export HADOOP_HOME前面的‘#’号去掉,并让它指向您所安装hadoop的目录,我的/home/hadoop/hadoop;
将export HIVE_CONF_DIR=/home/hadoop/hive/conf,并且把‘#’号去掉;
将export HIVE_AUX_JARS_PATH=/home/hadoop/hive/lib,并且把‘#’号去掉。
b、修改hive-site.xml
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>#hdfs下的目录
<description>location of default database for the warehouse</description>
</property>
#存放hive相关日志的目录
<property>
<name>hive.querylog.location</name>
<value>/usr/hadoop/hive/log</value>#需要自己手动创建对应目录
<description>
Location of Hive run time structured log file
</description>
</property>
c、在hive-site.xml下配置mysql元数据库
<configuration>
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.11.157:3306/hive</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>mysql</value>
</property>
</configuration>
根据实际情况做对应的修改。并下载mysql的驱动复制到hive/lib中。
到此hive的安装配置已完成,可以进入hive查看一下。
hive
show tables;
Hive的安装相对比较简单,只需修改几个配置就行。Hive自动了元数据库,但使用不方便,因为自带的数据库如果进入hive shell的路径不一致,就看不到对应的表,如从/home进入hive建的表,从/home/hadoop,路径进入hive则看不到刚才建的表,所有建议单独安装数据库作为元数据库,我安装了mysq数据库,作为Hive的元数据库。
1、安装myslq,最好采用yum或apt-get的方式安装,不同的平台的采取不同方式,这样可以省去很多麻烦,避免了解决依赖包的问题。
安装完myslq之后,需要做一点配置。
设置密码:
MySQL在刚刚被安装的时候,它的root用户是没有被设置密码的。首先来设置MySQL的root密码。
[root@sample ~]# mysql -u root ← 用root用户登录MySQL服务器
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2 to server version: 4.1.20
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>grant all on mysql.* to 'root'@'localhost' identified by 'password';
之后 就可以通过密码登录mysql了。
设置远程访问:
首先,在MySQL服务器上本地登录,使用下面的命令登录:
# mysql-u root -p
然后,使用权限管理命令将所有表的所有权限授予用户,下面继续以root为例(需要注意的是用户名root,被授权主机%,登录密码password需要被单引号括起来):
mysql> grant all privileges on *.* to 'root’@'%’ identified by 'password';
2、tar 解压hive压缩包
修改配置文件
hive的配置文件放在HIVE_HOME/conf目录下,我们需要修改hive-env.sh和hive-site.xml这两个文件。
ls之 后发现并没有这两个文件,但是有hive-env.sh.template,hive-default.xml.template,我们须复制这两个文 件,并分别命名为hive-env.sh,hive-site.xml。
一般还有一个hive-default.xml文件,同样由hive- default.xml.template复制而来。hive-default.xml是默认配置,hive-site.xml是个性化配置,将会覆盖 hive-default.xml配置。
a、修改hive-env.sh配置文件
将export HADOOP_HEAPSIZE=1024前面的‘#’去掉,当然可以根据自己的环境对这个默认的1024进行优化;
将export HADOOP_HOME前面的‘#’号去掉,并让它指向您所安装hadoop的目录,我的/home/hadoop/hadoop;
将export HIVE_CONF_DIR=/home/hadoop/hive/conf,并且把‘#’号去掉;
将export HIVE_AUX_JARS_PATH=/home/hadoop/hive/lib,并且把‘#’号去掉。
b、修改hive-site.xml
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>#hdfs下的目录
<description>location of default database for the warehouse</description>
</property>
#存放hive相关日志的目录
<property>
<name>hive.querylog.location</name>
<value>/usr/hadoop/hive/log</value>#需要自己手动创建对应目录
<description>
Location of Hive run time structured log file
</description>
</property>
c、在hive-site.xml下配置mysql元数据库
<configuration>
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.11.157:3306/hive</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>mysql</value>
</property>
</configuration>
根据实际情况做对应的修改。并下载mysql的驱动复制到hive/lib中。
到此hive的安装配置已完成,可以进入hive查看一下。
hive
show tables;