hive的安装与启动
1.安装mysql和hadoop
前提:首先你在安装hive之前你要事先安装好hadoop和mysql
因为hive的数据是存储在hdfs中的在使用hive之前也要先开启mysql服务
就自己前安装的mysql,但是要注意,开启远程连接权限
1)
[root@doit01 ~]# service mysqld start
Starting mysqld: [ OK ]
mysql -uroot -proot
mysql > grant all privileges on *.* to 'root'@'%' identified by '密码' with grant option;
mysql > flush privileges;
2) 授权完成后,测试一下是否成功:在windows上用Navicat连接一下看是否能成功!
mysql启动正常 开启远程连接
3)[root@doit01 ~]#start-all.sh//开启hdfs和yamr
2.上传hive的安装包,解压
1)解压tar -zxf apache-hive-2.3.5.tar.gz
2)更名mv hive-env.sh.template hive-env.sh
3 vi hive-env.sh
export HADOOP_HOME=/usr/apps/hadoop-2.8.5/
# Hive Configuration Directory can be controlled by:
export HIVE_CONF_DIR=/usr/apps/hive-2.3.5/conf/
- 修改配置文件(注意写入时要 i )
vi hive-site.xml
-----------------***********
<configuration>
<!-- 记录HIve中的元数据信息 记录在mysql中 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://doit01:3306/hive?createDatabaseIfNotExist=true&useSSL=false</value>
</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>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<property>
<name>hive.exec.scratchdir</name>
<value>/user/hive/tmp</value>
</property>
<property>
<name>hive.querylog.location</name>
<value>/user/hive/log</value>
</property>
<!-- shell客户端连接的端口 -->
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
<property>
<name>hive.server2.thrift.bind.host</name>
<value>0.0.0.0</value>
</property>
<property>
<name>hive.server2.webui.host</name>
<value>0.0.0.0</value>
</property>
<!-- hive服务的页面的端口 -->
<property>
<name>hive.server2.webui.port</name>
<value>10002</value>
</property>
<property>
<name>hive.server2.long.polling.timeout</name>
<value>5000</value>
</property>
<property>
<name>hive.server2.enable.doAs</name>
<value>true</value>
</property>
<property>
<name>datanucleus.autoCreateSchema </name>
<value>false</value>
</property>
<property>
<name>datanucleus.fixedDatastore </name>
<value>true</value>
</property>
<property>
<name>hive.execution.engine</name>
<value>mr</value>
</property>
<property>
<name>hive.zookeeper.quorum</name>
<value>doit01,doit02,doit03</value>
</property>
</configuration>
- vi hdp/ect/hadoop/core-site.xml
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
6.拷贝一个mysql的jdbc驱动jar包到hive的lib目录中
百度输入点击下载即可
mysql-connector-java-5.1.39
7 重启hdp
stop-all.sh
start-all.sh
- 初始化hive的元数据库
${HIVE_HOME}/bin/schematool -initSchema -dbType mysql
9.启动方式一
本地客户端启动 直接输入 hive启动
[root@doit01 hive]# cd /usr/apps/hive-2.3.1/bin
[root@doit01 bin]# hive
启动方是二(文字说明)
启动是方式二 使用beeline方式启动远程连接(只有用第二种方式启动才可以出现表格!!!)
1) 在克隆的机器上 启动 hiveserver2 服务
2) 在本机器上 启动 beeline远程连接窗口
3) 在本机器上 !connect jdbc:hive2://doit01:10000
root
回车
使用beeline方式启动远程连接(只有用第二种方式启动才可以出现表格!!!)
1) 在克隆的机器上 启动
[root@doit01 hive]# cd /usr/apps/hive-2.3.1/bin
[root@doit01 hive]# hiveserver2
2) 在本机器上 启动 beeline远程连接窗口
[root@doit01 bin]# cd /usr/apps/hive-2.3.1/bin
[root@doit01 bin]# beeline
beeline> ! connect jdbc:hive2://doit01:10000
Connecting to jdbc:hive2://doit01:10000
Enter username for jdbc:hive2://doit01:10000: root
Enter password for jdbc:hive2://doit01:10000:
Connected to: Apache Hive (version 2.3.1)
Driver: Hive JDBC (version 2.3.1)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://doit01:10000>
**第二种方式启动可以在窗口中看到数据的表格**