一、安装前的说明
- hive相当于MapReduce的客户端,所以hive只有在hadoop环境下正常运行,这里说明一下,本博客今后的案例都会将hive安装在hadoop-ip-101的机器上
- hive依赖java,hadoop,mysql
- 准备好hive的安装包:hive-0.13.1-cdh5.3.6.tar.gz(请自行下载)
二、安装过程
- hadoop集群安装:详见 : Hadoop(三)——hadoop完全分布式搭建(CentOS7.x_64+jdk8_64+hadoop2.4.0_64)
- 安装mysql:详见 : linux基础(四)——centos7安装mysql 本次安装的mysql服务器 ip:192.168.0.70
- 将hive-0.13.1-cdh5.3.6.tar.gz通过sftp上传至 hadoop@hadoop-ip-101:/home/hadoop/soft/
![](https://oscimg.oschina.net/oscnet/42ee080ecee695f1291d72eb89dba0b1eda.jpg)
- 将其解压到 hadoop@hadoop-ip-101:/home/hadoop/module
![](https://oscimg.oschina.net/oscnet/83c965bc06941ca47fcf5bd6c7a5d41c50b.jpg)
- 进入 /home/hadoop/module/hive-0.13.1-cdh5.3.6/conf 将默认的配置文件修改为下列名称
![](https://oscimg.oschina.net/oscnet/5d4c0bd9fce9d53a2cf6fc59660684f4853.jpg)
- 配置 hive-env.sh;配置结果JAVA_HOME,HADOOP_HOME,及hive中配置文件的目录
![](https://oscimg.oschina.net/oscnet/ced0c1e97dcbb643507d7368c5c5cb640aa.jpg)
- 配置 hive-log4j.propertie: 配置日志存放的路径
![](https://oscimg.oschina.net/oscnet/aef901520d0318559b1c14ca434ef262bd4.jpg)
- 配置 hive-site.xml;由于这里面的属性较多,就不一一展示了;这里至修改6个配置如下
<!-- 配置mysql数据库 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.0.70:3306/metastore?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<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>
<!-- 是否在当前客户端中显示查询出来的数据的字段名称 -->
<property>
<name>hive.cli.print.header</name>
<value>true</value>
<description>Whether to print the names of the columns in query output.</description>
</property>
<!-- 是否在当前客户端中显示当前所在数据库名称 -->
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
<description>Whether to include the current database in the Hive prompt.</description>
</property>
- 将mysql-connector-java-5.1.37-bin.jar 上传到/home/hadoop/module/hive-0.13.1-cdh5.3.6/lib
三、启动hive
- 执行: /home/hadoop/module/hive-0.13.1-cdh5.3.6/bin/hive 启动成功显示下面内容
![](https://oscimg.oschina.net/oscnet/059edfa15033f16722f83cca3108944a2db.jpg)
- hive简单的命令
- show databases 显示当前有哪些数据库
- user dbname 选择数据库
- show tables 显示当前数据库下面有哪些表
- 案例
![](https://oscimg.oschina.net/oscnet/376116bb48798f9e13be88a8c4a0f45b4e5.jpg)