二 在cenos上部署Hive环境

本文档详细介绍了在CentOS系统上部署Hive的步骤,包括从Apache官网下载与Hadoop兼容的Hive版本,确保安装了JDK、Hadoop、Zookeeper和MySQL,配置环境变量,将Hive解压并添加到系统路径,修改hive-env.sh和hive-site.xml文件以连接MySQL元数据,最后启动Hive服务。

1 下载Hive

Hive官网地址
http://hive.apache.org/
(注意要和hadoop的版本兼容)

2 Hive安装前提

  1. 先要安装JDK(在环境变量中有JAVA_HOME)
  2. 安装hadoop(在环境变量中有HADOOP_HOME)
  3. 安装zookeeper
  4. 安装了Mysql数据库(并且提供一个可以从任意机器访问mysql服务实例的用户)

3 Hive的安装和配置

3.1 安装Hive

把下载的Hive包解压到一个无中文的目录即可.然后把Hive添加到环境变量中.

3.2 Hive的配置

  1. hive/conf目录下的hive-env.sh.template名称为hive-env.sh
mv hive-env.sh.template hive-env.sh
  1. 配置hive-env.sh文件
    在hive-env.sh文件中添加:
    (a)配置HADOOP_HOME路径
export HADOOP_HOME=/opt/module/hadoop-2.7.2

(b)配置HIVE_CONF_DIR路径

export HIVE_CONF_DIR=/opt/module/hive/conf
  1. Hive元数据配置到MySql数据库
    确保Mysql数据库已经安装,并且Mysql的服务已经启动.
    (a) 下载mysql connector(jdbc,注意要和数据库的版本相兼容)
    (b) 把JDBC解压出来的jar包放到以下目录:
hive/lib/

© 配置hive-site.xml文件
在文件中添加:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
	<property>
	  <name>javax.jdo.option.ConnectionURL</name>
	  #这里需要注意,改成你安装mysql的主机名字
	  <value>jdbc:mysql://xiaoai03:3306/metastore?createDatabaseIfNotExist=true</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>root</value>
	  <description>username to use against metastore database</description>
	</property>

	<property>
	  <name>javax.jdo.option.ConnectionPassword</name>
	  <value>000000</value>
	  <description>password to use against metastore database</description>
	</property>
</configuration>

安装完成后,可以用以下命令启动hive

hive

如果失败重启虚拟机.

### 安装和配置 Hive 在 CentOS 7 上 Hive 是一个构建在 Hadoop 生态系统上的数据仓库工具,它允许用户使用类 SQL 的查询语言(称为 HiveQL)来查询和管理分布式存储中的大规模数据。以下是安装和配置 Hive 的步骤: #### 1. 系统要求与依赖项 确保你的系统已安装以下组件: - Java Development Kit (JDK):Hive 需要 JDK 来运行。 - HadoopHive 依赖于 Hadoop 提供底层的分布式计算能力。 可以通过以下命令检查是否已经安装了这些组件: ```bash java -version hadoop version ``` 如果没有安装,可以参考 Cloudera 或其他官方文档进行安装 [^3]。 #### 2. 下载并解压 Hive 从 Apache 官方网站下载最新版本的 Hive,并将其解压到指定目录中。例如,将 Hive 解压到 `/usr/lib/hive` 目录下: ```bash sudo mkdir /usr/lib/hive cd Downloads sudo mv apache-hive-<version>-bin /usr/lib/hive ``` #### 3. 设置环境变量 编辑 `~/.bashrc` 文件以添加 Hive环境变量: ```bash export HIVE_HOME=/usr/lib/hive/apache-hive-<version>-bin export PATH=$PATH:$HIVE_HOME/bin ``` 保存文件后,执行以下命令使更改生效: ```bash source ~/.bashrc ``` #### 4. 配置 Hive 进入 Hive 的配置目录,通常位于 `$HIVE_HOME/conf`,复制模板文件并进行必要的修改: ```bash cd $HIVE_HOME/conf cp hive-env.sh.template hive-env.sh ``` 编辑 `hive-env.sh` 文件,设置 `HADOOP_HOME` 和 `JAVA_HOME`: ```bash export HADOOP_HOME=/path/to/hadoop export JAVA_HOME=/path/to/java ``` #### 5. 创建 Hive 数据库和元数据存储 Hive 使用一个数据库来存储其元数据信息。默认情况下,Hive 使用的是 Derby 数据库,但为了更好的性能和可靠性,建议使用 MySQL 或 PostgreSQL。 对于 MySQL,首先需要创建一个新的数据库和用户: ```sql CREATE DATABASE hive_metastore; CREATE USER 'hiveuser'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON hive_metastore.* TO 'hiveuser'@'localhost'; FLUSH PRIVILEGES; ``` 然后,在 Hive 的配置文件 `hive-site.xml` 中配置数据库连接信息: ```xml <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/hive_metastore?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>hiveuser</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>password</value> </property> </configuration> ``` #### 6. 初始化 Hive 元数据库 运行以下命令来初始化 Hive 的元数据库: ```bash schematool -dbType mysql -initSchema ``` #### 7. 启动 Hive 现在你可以启动 Hive 并开始使用它了: ```bash hive ``` 这将打开 Hive 的交互式 shell,你可以在其中执行 HiveQL 查询。 #### 示例代码 下面是一个简单的 HiveQL 查询示例,用于创建表并插入数据: ```sql CREATE TABLE employees (name STRING, salary FLOAT); INSERT INTO TABLE employees VALUES ('Alice', 50000), ('Bob', 60000); SELECT * FROM employees; ``` ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值