• Hive安装与部署


    进去root权限(su)

    1.从https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-1.2.2/apache-hive-1.2.2-bin.tar.gz获取镜像地址选择版本下载(此处使用清华开源的Apache-hive1.2.2版本)

    wget 下载地址

    2.解压安装hive

    tar -xzvf apache-hive-1.2.2-bin.tar.gz

    3.设置hive环境变量

    vim /etc/profile
    加入(根据自己安装的路径来写)
    export HIVE_HOME=/usr/local/hive
    export PATH=$PATH:$HIVE_HOME/bin

    4.配置Hive

    # cd $HIVE_HOME/conf(进入hive目录下)

    此处为:
    cd /usr/local/hive/conf
    cp hive-env.sh.template hive-env.sh
    cp hive-default.xml.template hive-default.xml
    cp hive-log4j2.properties.template hive-log4j2.properties
    cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties

    5.创建HDFS目录(开启hadoop:start-all.sh)

    hdfs dfs -mkdir -p /usr/hive/warehouse(此处的-p指直接创建多级目录,一次创建成功)
    hdfs dfs -mkdir -p /usr/hive/tmp
    hdfs dfs -mkdir -p /usr/hive/log
    hdfs dfs -chmod g+w /usr/hive/warehouse(设置权限)
    hdfs dfs -chmod g+w /usr/hive/tmp
    hdfs dfs -chmod g+w /usr/hive/log

    6.修改 hive-env.sh(位于$HIVE_HOME/bin)

    vim hive-env.sh
    (以下修改自己对应的路径,以下仅供参考)
    export JAVA_HOME=/home/xiaolanlin/jdk1.8.0_201
    export HIVE_HOME=/usr/local/hive
    export HADOOP_HOME=/usr/local/hadoop-2.7.6
    export HIVE_CONF_DIR=/usr/local/hive/conf

    7.修改 hive-site.xml(位于$HIVE_HOME/conf)

    vim hive-site.xml
    替换以下参数
    <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive</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>xiaolanLin</value>#数据库用户名
    <description>Username to use against metastore database</description>
    </property>
     
    <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>linxiaolan</value>#数据库密码
    <description>password to use against metastore database</description>
    </property>
    下面的部分如果不配置会产生错误
    <property>
    <name>hive.exec.local.scratchdir</name>
    <value>/usr/local/hive</value>
    <description>Local scratch space for Hive jobs</description>
    </property>
     
    <property>
    <name>hive.downloaded.resources.dir</name>
    <value>/usr/local/hive/hive-downloaded-addDir/</value>#自定义目录
    <description>Temporary local directory for added resources in the remote file system.</description>
    </property>
     
    <property>
    <name>hive.querylog.location</name>
    <value>/usr/local/hive/querylog-location-addDir/</value>#自定义目录
    <description>Location of Hive run time structured log file</description>
    </property>
     
    <property>
    <name>hive.server2.logging.operation.log.location</name>
    <value>/usr/local/hive/hive-logging-operation-log-addDir/</value>#自定义目录
    <description>Top level directory where operation logs are stored if logging functionality is enabled</description>
    </property>

    8.修改hive-log4j.properties

    vim hive-log4j.properties
    hive.log.dir=自定义目录

    9.删除hive-site.xml.swp

    rm -rf ./conf/.hive-site.xml.swp(文件修改过程中退出出现的错误,会产生缓存文件,将其删除)

    10.创建数据库和用户

    linux(Ubuntu16.04)安装mysql参考教程https://www.cnblogs.com/luengmingbiao/p/10864249.html
    mysql -uroot -p(输入密码后进入mysql)
    hive> create database hive default charser utf8 COLLATE utf8_general_ci;
    hive> show databases;
    hive> grant all on hive.* to 'hive'@'%' identified by 'hive';(将所有数据库的所有表的所有权限赋给hive用户,后面的hive是配置hive-site.xml中配置的连接密码)
    hive> flush privileges;(刷新mysql系统权限关系表)
    hive> exit;(quit;)

    11.数据库的初始化

    schematool -initSchema -dbType mysql

    12.启动hive

    hive --service metastore
    hive

    遇到的问题:

    1.还未安装jdbc

    wget http://central.maven.org/maven2/mysql/mysql-connector-java/6.0.6/mysql-connector-java-6.0.6.jar(此版本不是目前最新)

    2.解决了上面这个问题后,接下来依然报错

    于是我决定将版本升级为目前最新版本
    wget http://central.maven.org/maven2/mysql/mysql-connector-java/8.0.15/mysql-connector-java-8.0.15.jar(此版本为目前最新)

    3.于是出现了新的报错(坑越踩越多,还是继续加油吧^~^)

    报错说它不是最新版本……
    我开始怀疑人生……
    决定检查一下我是不是有什么还没做
    噢,数据库还没创建!!!~~~~~~~~

    4.请往上面第10点创建数据库。(↑↑↑↑)

     
  • 相关阅读:
    AJAX跨域JS访问
    dd
    学习java,搭建一个英文名著轻松阅读网站
    超载问题求解!!!
    nginx + uwsgi 部署Django项目
    一种算法问题,求指点!
    js除法余数
    button捕捉回车键
    为SQL表添加全文索引范例
    .Net刷新页面的小结
  • 原文地址:https://www.cnblogs.com/xiaolan-Lin/p/11358901.html
Copyright © 2020-2023  润新知