Hive安装
1.1下载Hive安装包
官网:
个人建议到这里下载:
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 envexport HIVE_HOME=/export/servers/hiveexport 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/jdkexport HADOOP_HOME=/export/servers/hadoopexport 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.HiveEventCounterlog4j.appender.EventCounter=org.apache.hadoop.log.metrics.EventCounter
1.5配置远程登陆模式
创建hive-site.xml文件
touch hive-site.xml
将以下信息写入到hive-site.xml文件中
hive.metastore.warehouse.dir /usr/hive-1.2.2/warehouse javax.jdo.option.ConnectionURL jdbc:mysql://hadoop02:3306/hivedb?createDatabaseIfNotExist=true //红色字体为你的hive主机名javax.jdo.option.ConnectionDriverName com.mysql.jdbc.Driver javax.jdo.option.ConnectionUserName root //database user namejavax.jdo.option.ConnectionPassword password //database password
<property>
<name>hive.cli.print.current.db</name><value>true</value></property> <property><name>hive.cli.print.header</name><value>true</value></property>1.6安装MySQL并配置数据库及权限
安装MySQL数据库及客户端
yum install mysql-serveryum install mysqlservice mysqld start //开启服务
# mysql -u root mysqlmysql>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集群
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参考官网
二.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