3.安装Hive

版本问题:起初安装hive2.1.1 但是跟hadoop2.6.5无法使用 启动提示Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient 版本过高导致的

书中记录使用hive2.1.0 但是官方,镜像站未找到对应版本 ,采用降级1.2.2测试

1.将hive包解压放到/opt/hive/目录下

2.进入hive/config

$cd /opt/hive/config

3.创建hive-site.xml写入内容

$vi hive-site.xml

内容如下

<?xml version="1.0"?>

        <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

        <configuration>

                <property>

                        <name>hive.metastore.local</name>

                        <value>true</value>

                </property>

                <property>

                        <name>javax.jdo.option.ConnectionURL</name>

                        <value>jdbc:mysql://master:3306/hive_168?characterEncoding=UTF-8</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>pOhN!yZ0N6u</value>

                </property>



        </configuration>

4.解压mysql-connector-java-5.1.46.tar.gz

5.进入目录将mysql-connector-java-5.1.46.jar复制到hive/lib目录下

$cd mysql-connector-java-5.1.46
$cp mysql-connector-java-5.1.46.jar  /opt/hive/lib/

6.编辑全局变量

$vi .bash_profile

增加内容如下

export HIVE_HOME=/opt/hive
export PATH=$PATH:$HIVE_HOME/bin

刷新环境变量

$source ~/.bash_profile

3.安装Hive

7.启动hive

$bin/hive

1.22版本会出现一个错误

[ERROR] Terminal initialization failed; falling back to unsupported
解决方法:
将hive/lib/jline-2.12.jar拷贝一个比较高的版本放到hadoop下(master,slave0,slave1)
 $cp lib/jline-2.12.jar /home/hadoop/hadoop-2.6.2/share/hadoop/yarn/lib
成功情况
hive>

8.命令行创建表

(注意变量,后的空格)

$hive -e 'create table testDB(id int, name string, age int);'

查看创建的表

$hive -e 'show tables;'

9.hive shell 模式可直接打里边内容

相关推荐