第3章安装一(2.3.7)(成功)
官方安装文档
https://cwiki.apache.org/confluence/display/Hive/GettingStarted
3.1上传和解压和重命名
apache-hive-2.3.7-bin.tar.gz
解压
tar -zxvf apache-hive-2.3.7-bin.tar.gz
重命名
mv apache-hive-2.3.7-bin hive2.3.7
3.1.1hive-env.sh
cd /opt/software/hive2.3.7/conf
mv hive-env.sh.template hive-env.sh
export HIVE_CONF_DIR=/opt/software/hive2.3.7/conf
HADOOP_HOME=/opt/software/hadoop-2.7.2
export HIVE_AUX_JARS_PATH=/opt/software/hive2.3.7/lib
3.1.2修改hive-log.properties
创建logs 目录
mkmdir logs
mv hive-log4j2.properties.template hive-log4j2.properties
property.hive.log.dir = /opt/software/hive2.3.7/logs
3.1.3赋值mysql 的连接jar
复制mysql的驱动程序到hive/lib下面(这里已经拷贝好了)
cp mysql-connector-java-5.1.6.jar ./hive/lib
3.1.4hive-site.xml
javax.jdo.option.ConnectionURL
jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true
JDBC connect string for a JDBC metastore
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
<description>password to use against metastore database</description>
</property>
hive.metastore.schema.verification false
3.2配置环境变量
export HIVE_HOME=/opt/software/hive2.3.7
export PATH=
P
A
T
H
:
PATH:
PATH:HIVE_HOME/bin
3.3初始化元数据
./schematool -initSchema -dbType mysql
注意:
Mysql授权所有用户,远程访问
grant all privileges on . to ‘root’@’%’ identified by ‘123456’;
刷新生效
flush privileges;
3.4启动hive
bin/hive
Hive几种使用方式:
1.Hive交互shell bin/hive
2.Hive JDBC服务(参考java jdbc连接mysql)
3.hive启动为一个服务器,来对外提供服务
bin/hiveserver2
nohup bin/hiveserver2 1>/var/log/hiveserver.log 2>/var/log/hiveserver.err &
启动成功后,可以在别的节点上用beeline去连接
bin/beeline -u jdbc:hive2://mini1:10000 -n root
或者
bin/beeline
! connect jdbc:hive2://mini1:10000
4.Hive命令
hive -e ‘sql’
bin/hive -e 'select * from t_test'
遇到问题
3.5遇到问题
3.5.1问题一
如果初始化元数据的时候hive的lib 下面如果有mysql的包
但是找不到,说明版本不对应的问题
首先查看mysql的版本,在启动的日志中就能看到
替换成对应的版本 ,问题就解决了
3.5.2问题二
Access denied for user ‘root’@‘vm33’ (using password: YES)
grant all on . to ‘root’@‘vm33’