Hive (HiveServer2 启动配置)

配置文件

hive-site.xml (hive)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<configuration>
<!-- JDBC 连接的 URL -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://bigdata1:3306/metastore?useSSL=false&amp;allowPublicKeyRetrieval=true</value>
</property>
<!-- JDBC 连接的 Driver -->
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.cj.jdbc.Driver</value>
</property>
<!-- JDBC 连接用户名 -->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<!-- JDBC 连接密码 -->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</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>bigdata1</value>
</property>
<!-- 指定 HiveServer2 连接的端口号 -->
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
</configuration>

core-site.xml (hadoop)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://bigdata1:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/module/hadoop/tmp</value>
</property>
<!-- 配置 HDFS 登录使用的静态用户 -->
<property>
<name>hadoop.http.staticuser.user</name>
<value>sfy</value>
</property>
<!-- 配置所有节点的 root 用户可作为代理用户 -->
<property>
<name>hadoop.proxyuser.sfy.hosts</name>
<value>*</value>
</property>
<!-- 配置 root 用户能够代理的用户组 -->
<property>
<name>hadoop.proxyuser.sfy.groups</name>
<value>*</value>
</property>
<!-- 配置 atguigu 用户能够代理的用户 -->
<property>
<name>hadoop.proxyuser.sfy.users</name>
<value>*</value>
</property>
</configuration>

启动 HiveServer2

要启动 HiveServer2,请运行以下命令:

1
hive --service hiveserver2

注意事项

  • 确保 MySQL 数据库已启动并可以访问。
  • HiveServer2 需要在运行前配置好相关的 Hive 和 Hadoop 环境。
  • 确保网络设置允许访问 HiveServer2 绑定的端口(通常是 10000)。