温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Ubuntu中如何安装hive1.1 + mysql

发布时间:2021-11-15 09:56:10 来源:亿速云 阅读:238 作者:小新 栏目:云计算

这篇文章主要介绍Ubuntu中如何安装hive1.1 + mysql,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

一,下载

    1, apache-hive-1.1.0-bin.tar.gz下载

     下载地址:http://apache.dataguru.cn/hive/hive-1.1.0/apache-hive-1.1.0-bin.tar.gz

    2,mysql-connector-java-5.0.8.tar.gz下载

二,安装

     1,mysql 安装:

     sudo apt-get install mysql-server

      中间让设root密码,请认真添写,并劳记 

        启动MySQL:
             创建hive连接的用户,和hive存放元数据的数据库,如下:
             mysql> GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%' IDENTIFIED BY 'hive' ;         
             Query OK, 0 rows affected (0.09 sec)
            mysql> create database hive default character set latin1;     //字符集必须是latian1,如果是utf8则很多     hive元数据表无法创建。
              Query OK, 1 row affected (0.01 sec)
 具体的启动命令:
            启动metastore:(远程mysql需要启动)
           hive --service metastore -hiveconf hbase.zookeeper.quorum=db96,db98,db99 -hiveconf hbase.zookeeper.property.clientPort=2181 
启动hiveservice:
            hive --service hiveserver -hiveconf hbase.zookeeper.quorum=db96,db98,db99 
 -hiveconf hbase.zookeeper.property.clientPort=2181 //(启动服务,这样jdbc:hive就能连上,默认10000端口,后面的部分一定要带上,否则用eclipse连接不上的)   

     2,hive安装:进入hive下载目录解压apache-hive-1.1.0-bin.tar.gz到/usr/local目录

      sudo tar -zxvf apache-hive-1.1.0-bin.tar.gz -C /usr/local

      mv apche-hive-1.1.0-bin hive

      sudo chown -R hadoop:hadoop hive

 三,环境配置

     1,/etc/profile:

     exprot HIVE_HOME=/usr/local/hive

     export PATH=$HIVE_HOME/bin:$PATH    

     2,cp hive-default.xml.template hive-site.xml 并配置hive.site.xml

      <property>
               <name>hive.metastore.warehouse.dir</name>
               <value>hdfs://node0:9000/usr/hive/warehouse</value>
             (这里就与前面的hdfs dfs -mkdir -p /usr/hive/warehouse相对应)
       </property>
          其中node0指的是笔者的NameNode的hostname;
       <property>
              <name>hive.exec.scratchdir</name>
              <value>hdfs://node0:9000/usr/hive/warehouse</value>
       </property>
          //这个没有变化与derby配置时相同
        <property>
              <name>hive.querylog.location</name>
              <value>/usr/hive/log</value>
         </property>
-------------------------------------
         <property>
               <name>javax.jdo.option.ConnectionURL</name>
               <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNoExist=true</value>
          </property>
          javax.jdo.option.ConnectionURL
         这个参数使用来设置元数据连接字串
-------------------------------------
         <property>
                <name>javax.jdo.option.ConnectionDriverName</name>
                <value>com.mysql.jdbc.Driver</value>
        </property>

        javax.jdo.option.ConnectionDriverName
       关于在hive中用java来开发与mysql进行交互时,
       需要用到一个关于mysql的connector,
       这个可以将java语言描述的对database进行的操作,
       转化为mysql可以理解的语句。
       connector是一个用java语言描述的jar文件。
       而这个connector可在官方网站上下载得到。
       经证实即便connector与mysql的版本号不一致,
       也可以实现相应的功能。
        connector是要copy到/usr/hive/lib目录下面的。
       cp  mysql-connector-java-5.1.1.18-bin  /usr/hive/lib
-------------------------------------
        <property>
              <name>javax.jdo.option.ConnectorUserName</name>
              <value>hive</value>
        </property>
        这个javax.jdo.option.ConnectionUserName
        是用来设置hive存放的元数据的数据库(这里是mysql数据库)的用户名称的。
        而这个‘hive‘可以根据用户自己的需要来自行设置
--------------------------------------
         <property>
               <name>javax.jdo.option.ConnectionPassword</name>
               <value>hive</value>
        </property>
        这个javax.jdo.option.ConnetionPassword是用来设置,
        用户登录数据库的时候需要输入的密码的。
        而这个‘hive’同样可以根据用户自己的需要来进行设置。

        <property>
             <name>hive.aux.jars.path</name>
             <value>file:///usr/local/hive/lib/hive-hbase-handler-0.13.1.jar,file:///usr/local/hive/lib/protobuf-java-              2.5.0.jar,file:///usr/local/hive/lib/hbase-client-0.96.0-hadoop2.jar,file:///usr/local/hive/lib/hbase-common-0.96.0-hadoop2.jar,file:///usr/local/hive/lib/zookeeper-3.4.5.jar,file:///usr/local/hive/lib/guava-11.0.2.jar</value>
         </property>
         <property>  
                <name>hive.metastore.uris</name>  
                <value>thrift://192.168.8.96:9083</value>  
          </property>  
</configuration>
     上面的配置中用到的jar包均在hbase/lib下,
      [root@db96 lib]# pwd    //发现hive的lib目录下没有该文件。去hbase的lib下找到下面4个文件拷贝
                        //到hive的lib目录下。
/usr/local/hive/lib
[root@db96 lib]# ll protobuf-java-2.5.0.jar hbase-client-0.96.2-hadoop2.jar hbase-common-0.96.2-hadoop2.jar  guava-12.0.1.jar
ls: 无法访问protobuf-java-2.5.0.jar: 没有那个文件或目录
ls: 无法访问hbase-client-0.96.2-hadoop2.jar: 没有那个文件或目录
ls: 无法访问hbase-common-0.96.2-hadoop2.jar: 没有那个文件或目录
ls: 无法访问guava-12.0.1.jar: 没有那个文件或目录
[root@db96 lib]# pwd
/usr/local/hbase/lib
[root@db96 lib]# ll protobuf-java-2.5.0.jar hbase-client-0.96.2-hadoop2.jar hbase-common-0.96.2-hadoop2.jar  guava-12.0.1.jar
-rw-r--r-- 1 root root 1795932 12月 11 2013 guava-12.0.1.jar
-rw-r--r-- 1 root root  826678 3月  25 07:03 hbase-client-0.96.2-hadoop2.jar
-rw-r--r-- 1 root root  371546 3月  25 07:03 hbase-common-0.96.2-hadoop2.jar
-rw-r--r-- 1 root root  533455 12月 11 2013 protobuf-java-2.5.0.jar
[root@db96 lib]# cp protobuf-java-2.5.0.jar hbase-client-0.96.2-hadoop2.jar hbase-common-0.96.2-hadoop2.jar  guava-12.0.1.jar /usr/local/hive/lib

    3,cp hive-log4j.properties.template  hive-log4j.proprties
       vi hive-log4j.properties
       hive.log.dir=
       这个是当hive运行时,相应的日志文档存储到什么地方
       (mine:hive.log.dir=/usr/hive/log/${user.name})
       hive.log.file=hive.log
       这个是hive日志文件的名字是什么
       默认的就可以,只要您能认出是日志就好,
       只有一个比较重要的需要修改一下,否则会报错。
        log4j.appender.EventCounter=org.apache.hadoop.log.metrics.EventCounter
        如果没有修改的话会出现:
         WARNING: org.apache.hadoop.metrics.EventCounter is deprecated.
         please use org.apache.hadoop.log.metrics.EventCounter  in all the  log4j.properties files.
       (只要按照警告提示修改即可)。      

    4,最后在hive/lib目录下会有一个jline-2.12.jar要拷备到 hadoop/share/hadoop/yarn/lib下替换掉jline-0.19.jar 

以上是“Ubuntu中如何安装hive1.1 + mysql”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI