Hive是基于Hadoop的,安装Hive前需要安装好Hadoop环境,有关Hadoop安装步骤后续会更新
这里我们选用hive的版本是2.1.1
下载地址为:http://archive.apache.org/dist/hive/hive-2.1.1/apache-hive-2.1.1-bin.tar.gz
安装hive还需要准备好一个mysql的连接驱动包,可自行百度,推荐使用5.x.x版本
本次我将hive安装在主机名为node03的节点上
一、上传并解压安装包
下载完成之后将安装包上传到node03的/export/softwares目录下,并解压到/export/servers路径下
##可在在/export/softwares路径下采用rz -E命令上传压缩包
cd /export/softwares/
##此处需注意字母C务必大写
tar -zxvf apache-hive-2.1.1-bin.tar.gz -C ../servers/
二、安装MySQL
1.在线安装mysql相关软件包
安装mysql前先检查是否存在mysql,并卸载自带的mysql,命令如下
##查看是否安装mysql
rpm -qa|grep mysql
##若存在,则卸载相关依赖
rpm -e --nodeps mysql依赖名名
##通过yum命令安装
yum install mysql mysql-server mysql-devel
##也可以提前下载好安装包上传解压安装
##解压到指定目录(自己记得就好)
upzip mysql安装包名
##进入mysql的lib目录,安装客户端和服务
cd mysql-libs/
rpm -ivh mysql服务安装包名
rpm -ivh mysql客户端安装包名
2.启动mysql(命令任选其一即可)
##使用 mysqld 脚本启动(停止:/etc/inint.d/mysqld stop)
/etc/init.d/mysqld start
##使用使用 service 启动(停止:service mysqld stop)
##(5.0版本是mysqld,5.5.7版本是mysql)
##通过status或者select version()查看mysql版本
service mysqld start
##使用 safe_mysqld 启动(停止:mysqladmin shutdown)
safe_mysqld&
##可通过以下命令查看mysql状态
service mysql status
3.通过mysql安装自带脚本进行设置
/usr/bin/mysql_secure_installation
4.进入mysql的客户端,修改密码,然后进行授权
查看初始密码,并登录mysql客户端(首次登录)
##通过以下命令查看初始密码
cat /root/.mysql_secret
##登录客户端(首次登录使用临时密码,以后就用更改后的新密码)
mysql -uroot -p(临时密码)
##退出用以下命令
quit
修改mysql客户端密码
##修改密码(进入mysql后命令行后面要加;)
set password=password('新密码');
配置无主机登陆(以下方式任选其一)(只要是root账户,在任意主机都能登录)
##查看主机(登录mysql客户端后进行)
select user,host,password from user;
##将本地主机修改为任意主机
update user set host='%' where host='localhost';
##删除其他主机
delete from user where host='';
##刷新权限(也可以采用重启方式)
flush privileges;
##root和123456分别为用户名和密码
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
##刷新权限
flush privileges;
三、修改hive配置文件
1.修改hive-env.sh
##进入hive的配置目录conf
cd /export/servers/apache-hive-2.1.1-bin/conf
##拷贝并重命名配置模板
cp hive-env.sh.template hive-env.sh
##打开配置模板
vim hive-env.sh
##在模板中添加Hadoop路径的hive配置路径
HADOOP_HOME=/export/servers/hadoop-2.7.5
export HIVE_CONF_DIR=/export/servers/apache-hive-2.1.1-bin/conf
2.修改hive-site.xml
##进入hive配置目录,打开hive-site.xml文件
cd /export/servers/apache-hive-2.1.1-bin/conf
vim hive-site.xml
文件内容如下:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--用户名>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<!--用户密码>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
</property>
<!--连接URL,node03为主机名>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://node03:3306/hive?createDatabaseIfNotExist=true&useSSL=false</value>
</property>
<!--驱动>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!--元数据验证>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
<!--自动创建数据核>
<property>
<name>datanucleus.schema.autoCreateAll</name>
<value>true</value>
</property>
<!--主机...暂时不知咋解释>
<property>
<name>hive.server2.thrift.bind.host</name>
<value>node03</value>
</property>
</configuration>
进行以下配置后,可以在hive客户端看到当前数据库名称以及查询的表名信息
<!--打印表id>
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<!--打印数据库名>
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
四、添加mysql的连接驱动包到hive的lib目录下
hive使用mysql作为元数据存储,必然需要连接mysql数据库。因此需要添加一个mysql的连接驱动包到hive的安装目录下
将我们准备好的mysql-connector-java-5.1.38.jar 这个jar包直接上传到
/export/servers/apache-hive-2.1.1-bin/lib
这个目录下
至此,hive的安装部署已经完成,有关hive的交互方式请参考:hive的三种交互方式
五、配置hive的环境变量
node03服务器执行以下命令配置hive的环境变量
##打开配置文件
vim /etc/profile
##添加hive环境变量
export HIVE_HOME=/export/servers/apache-hive-2.1.1-bin
export PATH=:$HIVE_HOME/bin:$PATH
##环境变量生效
source /etc/profile
此外还可以在日志配置文件中修改相关配置信息