Hive- Hive安装

Hive安装

1.1下载Hive安装包

官网:http://hive.apache.org/downloads.html

个人建议到这里下载:http://apache.forsale.plus/

1.2将hive文件上传到HADOOP集群,并解压

将文件上传到 /usr ,解压

tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /usr/  

重命名: mv /usr/apache-hive-1.2.1-bin /usr/hive 

1.3配置环境变量

编辑/ect/profile

#set hive env
export HIVE_HOME=/export/servers/hive
export PATH=${HIVE_HOME}/bin:$PATH

#让环境变量生效
source /etc/profile

1.4修改hive配置文件hive/conf/

进入配置文件的目录

cd /usr/hive/conf/

修改hive-env.sh文件

cp hive-env.sh.template hive-env.sh

将以下内容写入到hive-env.sh文件中
export JAVA_HOME=/export/servers/jdk
export HADOOP_HOME=/export/servers/hadoop
export HIVE_HOME=/export/servers/hive

修改log4j文件

cp hive-log4j.properties.template hive-log4j.properties

将EventCounter修改成org.apache.hadoop.log.metrics.EventCounter
#log4j.appender.EventCounter=org.apache.hadoop.hive.shims.HiveEventCounter
log4j.appender.EventCounter=org.apache.hadoop.log.metrics.EventCounter

1.5配置远程登陆模式

创建hive-site.xml文件

touch hive-site.xml

将以下信息写入到hive-site.xml文件中

<configuration>
  <property>
    <name>hive.metastore.warehouse.dir</name>
    <value>/usr/hive-1.2.2/warehouse</value>
  </property>
  <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://hadoop02:3306/hivedb?createDatabaseIfNotExist=true</value> //红色字体为你的hive主机名   </property>   <property>     <name>javax.jdo.option.ConnectionDriverName</name>     <value>com.mysql.jdbc.Driver</value>   </property>   <property>     <name>javax.jdo.option.ConnectionUserName</name>     <value>root</value> //database user name
  </property>   <property>     <name>javax.jdo.option.ConnectionPassword</name>     <value>password</value>  //database password   </property>

<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>

 
  


<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>


</configuration>

1.6安装MySQL并配置数据库及权限

安装MySQL数据库及客户端

yum install mysql-server
yum install mysql
service mysqld start               //开启服务
修改MySQL的root用户的密码:
# mysql -u root mysql
mysql>use mysql;
mysql>desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "password";  //为root添加远程连接的能力。
mysql>update user set Password = password('xxxxxx') where User='root';
mysql>select Host,User,Password  from user where User='root'; 
mysql>flush privileges;
mysql>exit;

重新登陆: mysql -u root -p 检查是否安装完成。

把mysql-connector-java-5.1.28.jar下载放到hive的lib目录

执行 schematool -dbType mysql -initSchema 

1.7启动

启动hive之前先启动HA集群

 

1.启动ZK集群 三台zk node1,2,3执行  zkServer.sh start 
2.启动 hadoop   start-dfs.sh 

3启动yarn  start-yarn.sh  或者 start-all.sh //同时把集群和yarn开启 

  利用 jps 检查namenode是否正常开启,没有的话需要手动单点启动: hadoop-daemon.sh start namenode 

4.开数据库服务:

service   mysqld  start 
service   mysqld  start    //检查服务状态

5.开启hive

运行hive命令即可启动hive

1.8测试

 show databases; 

1.9参考官网

https://cwiki.apache.org/confluence/display/Hive/AdminManual+MetastoreAdmin

 

二.HIVE安装报错解决方案

1、执行 schemaTool -dbType mysql -initSchema 如果报错Terminal initialization failed; falling back to unsupported

            将/export/servers/hive/lib 里面的jline2.12替换了hadoop 中/export/servers/hadoop/hadoop-2.6.1/share/hadoop/yarn/lib/jline-0.09*.jar

这个问题的报错是因为你在执行apache-hive-1.2.2-bin版本的时候,抛出的异常,解决方案是把该hive版本的lib下面的jline-2.12.jar拷贝到/usr/hadoop/share/hdoop/yarn/lib里面,然后把yarn里面的lib的jlne-0.09.jar包给改个名字即可。

重新启动hive即可。

2、登录SQL权限问题

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;   

flush privileges;

3、 java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient

解决方案:

schemaTool -dbType mysql -initSchema 

 

转载于:https://www.cnblogs.com/RzCong/p/7324851.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值