前置条件

  • Hadoop环境搭建
  • Mysql环境搭建(非Derby模式)

    下载安装

    https://dlcdn.apache.org/hive/hive-2.3.9/apache-hive-2.3.9-bin.tar.gz
    tar -xf hive-2.3.9-bin.tar.gz -C /opt/bigdata/
    mv apache-hive-2.3.9-bin/ hive-2.3.9
    ln -s hive-2.3.9 hive

    配置环境变量

    vim /etc/profile.d/hive_env.sh
    1. #set hive environment
    2. export HIVE_HOME=/opt/bigdata/hive
    3. export PATH=$PATH:$HIVE_HOME/bin
    source /etc/profile

    Derby模式

    下载解压后直接运行即可
    直接启动hive

    Mysql模式配置

    https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+Administration

    拷贝数据库连接依赖

    cp mysql-connector-java-8.0.22.jar /opt/bigdata/hive-2.3.9/lib/

    hive-site配置

    cd /opt/bigdata/hive-2.3.9/conf
    cp hive-default.xml.template hive-site.xml
    vim hive-site.xml
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
    <property>
      <name>javax.jdo.option.ConnectionURL</name>
      <value>jdbc:mysql://47.100.173.179:3306/hive?createDatabaseIfNotExist=true</value>
     </property>
     <property>
      <name>javax.jdo.option.ConnectionDriverName</name>
      <value>com.mysql.cj.jdbc.Driver</value>
    </property>
    <property>
      <name>javax.jdo.option.ConnectionUserName</name>
      <value>root</value>
    </property>
    <property>
      <name>javax.jdo.option.ConnectionPassword</name>
      <value>qinlei131479@QQ!!</value>
    </property>
    <property>
      <name>hive.metastore.warehouse.dir</name>
      <value>/user/hive/warehouse</value>
    </property>
    <!-- 启动后执行命令报错FAILED: HiveException java.lang.RuntimeException -->
    <property>
      <name>hive.metastore.schema.verification</name>
      <value>false</value>
    </property>
    </configuration>
    

    hdfs目录创建

    hdfs dfs -mkdir /tmp
    hdfs dfs -chmod g+w /tmp
    hdfs dfs -mkdir -p /user/hive/warehouse
    hdfs dfs -chmod g+w /user/hive/warehouse

    初始化元数据库

    schematool -dbType mysql -initSchema (2.1之后版本必须执行)
    image.png

    启动命令

    hive
    image.png

    MetaStoreServe模式

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

    vim hive-env.sh

    export HADOOP_HOME=/opt/bigdata/hadoop
    export HIVE_CONF_DIR=/opt/bigdata/hive
    

    vim hive-site.xml(远程需要配置)

    ```xml hive.server2.thrift.port 10000 hive.server2.thrift.bind.host master01 hive.metastore.uris thrift://master01:9083
hive.server2.thrift.client.user root Username to use against thrift client hive.server2.thrift.client.password 123456 Password to use against thrift client <a name="Q2JlD"></a> ## hadoop中vim core-site.xmlxml
hadoop.proxyuser.root.hosts

hadoop.proxyuser.root.groups

hadoop.proxyuser.hadoop.hosts

hadoop.proxyuser.hadoop.groups

```

hiveserver2 && beeline

nohup hiveserver2 &
netstat -nl | grep 10000 (查看hiveserver2是否启动成功)
hadoop fs -chmod 777 /tmp
beeline -u jdbc:hive2://localhost:10000 -n root
beeline -u jdbc:hive2://master01:10000 -n root -p 123456
image.png