Hive集群启动过程(Centos7)

1.启动hadoop集群:

# start-all.sh

2.启动MySQL集群:

# systemctl start mysqld

注意:也可以设置MySQL开机自启:systemctl enable mysqld

3.启动Hive相关服务:

(1)首先启动元数据服务:在Hive所在节点执行命令:

        # hive --service metastore &      (&表示放在后台运行)
(2)然后启动远程连接服务:在Hive所在节点执行命令:

         # nohup hive --service hiveserver2 &
(3)进入Hive CLI:在Hive所在节点执行命令:

         # hive

### CentOS 7 上搭建 Hive 集群的配置步骤 #### 准备工作 在开始搭建 Hive 集群前,需确认 Hadoop 已经成功部署并正常运行。Hive 是构建于 Hadoop 之上的一层数据仓库工具,因此其依赖于 Hadoop 的分布式存储和计算能力[^3]。 --- #### 安装 MySQL 数据库作为元数据库 为了支持 Hive 的元数据管理功能,通常会使用外部关系型数据库(如 MySQL)来存储元数据。以下是安装 MySQL 并完成基本配置的过程: 1. **下载并安装 MySQL** 使用 `yum` 命令安装 MySQL: ```bash sudo yum install mysql-server -y ``` 2. **启动 MySQL 服务** 启动 MySQL 服务并将它设置为开机自启: ```bash systemctl start mysqld systemctl enable mysqld ``` 3. **修改默认密码策略** 编辑 MySQL 配置文件 `/etc/my.cnf.d/mysql-clients.cnf` 或者 `/etc/my.cnf` 文件,添加以下内容以调整字符集和支持中文编码: ```ini [mysqld] character-set-server=utf8mb4 collation-server=utf8mb4_general_ci ``` 修改完成后重启 MySQL 服务: ```bash systemctl restart mysqld ``` 4. **初始化 root 用户密码** 登录 MySQL 控制台并重设 root 密码: ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_password'; FLUSH PRIVILEGES; ``` 5. **创建 Hive 元数据库用户** 创建一个新的数据库用于存储 Hive 的元数据,并赋予访问权限: ```sql CREATE DATABASE hive_db CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; GRANT ALL PRIVILEGES ON hive_db.* TO 'hive_user'@'%' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; ``` 以上操作完成了 MySQL 的基础配置以及与 Hive 远程连接的支持[^2]。 --- #### 下载并解压 Hive 软件包 1. **获取 Hive 安装包** 访问 Apache 官方网站或者镜像站点下载最新版本的 Hive: ```bash wget https://downloads.apache.org/hive/hive-3.1.0/apache-hive-3.1.0-bin.tar.gz tar zxvf apache-hive-3.1.0-bin.tar.gz mv apache-hive-3.1.0-bin /opt/apps/hive3.1 ``` 2. **编辑环境变量** 将 Hive 添加至系统的 PATH 变量中以便全局调用: ```bash echo "export HIVE_HOME=/opt/apps/hive3.1" >> ~/.bashrc echo "export PATH=\$PATH:\$HIVE_HOME/bin" >> ~/.bashrc source ~/.bashrc ``` --- #### 配置 Hive 参数 进入 Hive 的配置目录并创建必要的 XML 文件: ```bash cd /opt/apps/hive3.1/conf/ cp hive-default.xml.template hive-site.xml vim hive-site.xml ``` 在 `hive-site.xml` 中加入以下关键参数: ```xml <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://<MYSQL_HOST>:3306/hive_db?createDatabaseIfNotExist=true&useSSL=false</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>hive_user</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>password</value> </property> ``` 上述配置指定了 Hive 如何通过 JDBC 接口连接到 MySQL 数据库中的元数据表[^4]。 --- #### 初始化 Hive 表结构 执行以下命令加载初始 SQL 脚本以建立所需的元数据表格: ```bash schematool -dbType mysql -initSchema ``` 如果一切顺利,则表示 Hive 成功关联到了指定的 MySQL 实例上。 --- #### 测试 Hive 功能 验证 Hive 是否能够正常使用: ```bash hive CREATE TABLE test_table (id INT, name STRING); INSERT INTO test_table VALUES(1,'Alice'); SELECT * FROM test_table; ``` 当查询返回预期的结果时,说明整个集群已经可以投入使用了[^5]。 --- ### 注意事项 - 确认防火墙规则允许节点间通信。 - 如果遇到任何错误日志,请仔细检查路径、用户名及密码是否匹配实际设定情况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值