Hive安装及与HBase的整合(2)

4 Hive本地模式的安装

操作系统为Ubuntu14.04,需要安装并启动Hadoop及Hbase。

4.1 安装MySQL

// 切换root用户

$ su root

// 检查mysql是否安装

# netstat -tap | grep mysql

// 在线安装mysql

# apt-get install mysql-server mysql-client

// 启动mysql

# start mysql

// 设置开机自启动

# /etc/init.d/mysql start

// 设置root用户密码

# mysqladmin -u root password 'root'

// 使用客户端登录mysql

$ mysql -u root -p

// 创建hive用户,密码为hive

> create user 'hive' identified by 'hive';

// 创建数据库hivemeta,用于存放hive元数据

> create database hivemeta;

// 将hivemeta数据库的所有权限赋予hive用户,并允许远程访问

> grant all privileges on hivemeta.* to 'hive'@'%' identified by 'hive';

> flush privileges;

// 可查看用户hive的权限情况

> use mysql;

> select host, user, password from user;

Hive安装及与HBase的整合

4.2 安装Hive

// 解压安装包

$ tar -xvf hive-1.1.0-cdh5.7.1.tar.gz

// 进入hive的配置目录

$ cd hive-1.1.0-cdh5.7.1/conf/

// 修改hive-env.sh文件

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

$ vim hive-env.sh

HADOOP_HOME=/home/developer/app/hadoop-2.6.0-cdh5.7.1

// 创建hive-site.xml文件并配置

$ vimhive-site.xml

<configuration>
  <!-- 指定HDFS中的hive仓库地址 -->
  <property>
    <name>hive.metastore.warehouse.dir</name>
    <value>/hive/warehouse</value>
  </property>
  <!-- 该属性为空表示嵌入模式或本地模式,否则为远程模式 -->
  <property>
    <name>hive.metastore.uris</name>
    <value></value>
  </property>
  <!-- 指定mysql的连接 -->
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hivemeta?createDatabaseIfNotExist=true</value>
  </property>
  <!-- 指定驱动类 -->
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
  </property>
  <!-- 指定用户名 -->
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
  </property>
  <!-- 指定密码 -->
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hive</value>
  </property>
</configuration>

// 修改hive-log4j.properties指定日志输出路径

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

$ vim hive-log4j.properties

hive.root.logger=info,DRFA

hive.log.dir=/home/developer/app/hive-1.1.0-cdh5.7.1/logs

// 在下载JDBC Driver for MySQL并复制到hive的lib目录中

$ cp mysql-connector-java-5.1.39-bin.jar/home/developer/app/hive-1.1.0-cdh5.7.1/lib/

4.3 配置环境变量

$ cd ~

$ vim.bashrc

export HIVE_HOME=/home/developer/app/hive-1.1.0-cdh5.7.1

export PATH=$PATH:$HIVE_HOME/bin

$ source.bashrc

4.4 使用Hive Cli

// 启动hive的cli服务

$ hive

// 测试

> show databases;

Hive安装及与HBase的整合

4.5 使用Beeline

// 后台启动hiveserver2

$nohup hive --service hiveserver2 &

注:beeline依赖hiveserver2提供的thirft服务,必须启动,其默认端口为10000

// 使用beeline

$beeline

// 连接hive

> !connectjdbc:hive2://localhost:10000

注:需要通过hadoop用户登录,否则没有hdfs操作权限

// 测试

> show databases;

Hive安装及与HBase的整合

4.6 功能测试

// 启动hive的cli服务

$ hive

// 创建表

> create table user(id string,name string,age string) row format delimited fields terminated by '\t';

// 查看测试数据

$ cat data.txt

Hive安装及与HBase的整合

// 将本地数据导入hive

> load data local inpath '/home/developer/data.txt' overwrite into table user;

// 查看导入的数据

> select * from user;

Hive安装及与HBase的整合

// 查看数据条数

> select count(*) from user;

Hive安装及与HBase的整合

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/812cd4d644815183fe621c6228ed2bb9.html