HIVE-3.1.2搭建

修改hive环境变量文件

cd /opt/hive/conf # (Hive安装包路径的conf文件夹)
cp hive-env.sh.template hive-env.sh
vim hive-env.sh

在hive-env.sh文件的最下面加入如下内容

export HADOOP_HOME=/opt/hadoop  #(hadoop的路径)
export HIVE_CONF_DIR=/opt/hive/conf  # (hive配置文件夹的路径)
export HIVE_AUX_JARS_PATH=/opt/hive/lib  # (hive  lib库的路径)

在conf目录下创建hive-site.xml文件

vim hive-site.xml

插入一下内容

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <!-- jdbc 连接的 URL -->
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>
            jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value>
    </property>
    <!-- jdbc 连接的 Driver-->
    <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
    </property>
    <!-- jdbc 连接的 username-->
    <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>root</value>
    </property>
    <!-- jdbc 连接的 password -->
    <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>yyan.1026</value>
    </property>

    <!-- H2S运行绑定host -->
    <property>
        <name>hive.server2.thrift.bind.host</name>
        <value>slaver1</value>
    </property>
    <!-- 指定存储元数据要连接的地址,这个参数决定了metastore服务是自己配置,还是远程配置 -->
    <property>
        <name>hive.metastore.uris</name>
        <value>thrift://master:9083</value>
    </property>

    <!-- Hive 元数据存储版本的验证 -->
    <property>
        <name>hive.metastore.schema.verification</name>
        <value>false</value>
    </property>
    <!--元数据存储授权-->
    <property>
        <name>hive.metastore.event.db.notification.api.auth</name>
        <value>false</value>
    </property>

    
    <!-- Hive 默认在 HDFS 的工作目录 -->
    <!-- <property>
        <name>hive.metastore.warehouse.dir</name>
        <value>/user/hive/warehouse</value>
    </property> -->

    <!-- 指定 hiveserver2 连接的 host -->
    <!-- <property>
        <name>hive.server2.thrift.bind.host</name>
        <value>node01</value>
    </property> -->
    <!-- 指定 hiveserver2 连接的端口号 -->
    <!-- <property>
        <name>hive.server2.thrift.port</name>
        <value>10000</value>
    </property> -->
</configuration>

在Hive3中需要初始化metadata,命令如下

cd /opt/hive
bin/schematool -initSchema -dbType mysql -verbos

运行完成后会出现右图的结果。

并且在hive3.1.2的版本下,查询mysql的hive库会有72个表出现。

%title插图%num

这个时候,如果直接启动hive会出现如下报错。访问不了metadata。

%title插图%num

远程模式启动metastore服务

# 1. 前台启动
/opt/hive/bin/hive --service metastore
# 2. 后台启动
nohup /opt/hive/bin/hive --service metastore &
# 3. 前台启动开启debug日志
/opt/hive/bin/hive --service metstore --hiveconf hive.root.logger=DEBUG,console

metstore启动结果如下:

%title插图%num

metstore启动完成后,在启动hive查询数据库就会正常执行。

%title插图%num
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇