hive启动远程模式命令即注意事项

在启动Hive之前,确保集群的MySQL和Hadoop已经成功启动。Hadoop启动后,HDFS会进入安全模式,需等待安全模式结束再启动Hive。在HDFS安全模式中,只能查看数据,不能进行删除、上传和创建操作。启动Hadoop使用start-all.sh,关闭使用stop-all.sh。MySQL用于存储Hive的元数据。启动Hive远程模式,使用nohup启动metastore和hiveserver2,然后通过beeline连接到jdbc:hive2://node01:10000进行操作。

在启动hive前,一定在保证集群的mysql和Hadoop是启动成功的,

Hadoop是存储实质数据==
mysql是存储hive的元数据(映射关系数据)

Hadoop的启动命令:start-all.sh Hadoop
进程名:NameNode、DataNode
hadoop的关闭命令:stop-all.sh

[root@node01 ~]# start-all.sh 
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
Starting namenodes on [node01]
node01: starting namenode, logging to /export/servers/hadoop-2.6.0-cdh5.14.0/logs/hadoop-root-namenode-node01.out
node01: starting datanode, logging to /export/servers/hadoop-2.6.0-cdh5.14.0/logs/hadoop-root-datanode-node01.out
node02: starting datanode, logging to /export/servers/hadoop-2.6.0-cdh5.14.0/logs/hadoop-root-datanode-node02.out
node03: starting datanode, logging to /export/servers/hadoop-2.6.0-cdh5.14.0/logs/hadoop-root-datanode-node03.out
Starting secondary namenodes [node02]
node02: starting secondarynamenode, logging to /export/servers/hadoop-2.6.0-cdh5.14.0/logs/hadoop-root-secondarynamenode-node02.out
starting yarn daemons
starting resourcemanager, logging to /export/servers/hadoop-2.6.0-cdh5.14.0/logs/yarn-root-resourcemanager-node01.out
node01: starting nodemanager, logging to /export/servers/hadoop-2.6.0-cdh5.14.0/logs/yarn-root-nodemanager-node01.out
node02: starting nodemanager, logging to /export/servers/hadoop-2.6.0-cdh5.14.0/logs/yarn-root-nodemanager-node02.out
node03: starting nodemanager, logging to /export/servers/hadoop-2.6.0-cdh5.14.0/logs/yarn-root-nodemanager-node03.out
[root@node01 ~]# jps
19504 DataNode
12002 RunJar
20085 Jps
19365 NameNode
9448 QuorumPeerMain
19865 NodeManager
11817 RunJar
2169 -- process information unavailable
19758 ResourceManager

在hadoop启动集群成功后,HDFS会进入安全模式,等安全模式结束后再开始启动hive

**

注意hdfs在安全模式下:对数据只有查看的权限,

没有删除,上传,创建的权限

Mysql的启动命令:mysql -u mysql_name(你的mysql的用户名) -p
按下回车执行后在输入你mysql的password

在这里插入图片描述

**

登录hadoop的web端查看是否退出安全模式,
Hadoop的web端口号为:50070**

在这里插入图片描述

此次启动的是hive远程模式 ,
第一代客户端:后台挂起启动
nohup /export/servers/hive/bin/hive --service metastore &
nohup /export/servers/hive/bin/hive --service hiveserver2 &

客户端在那就执行这个启动代码:/export/servers/hive/bin/beeline

! connect jdbc:hive2://node01:10000
…username…:mysql_name
…password…: 可以不用输入,直接按回车即可

[root@node02 ~]# /export/servers/hive/bin/beeline 
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/export/servers/hbase/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/export/servers/hadoop-2.6.0-cdh5.14.0/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
Beeline version 1.1.0-cdh5.14.0 by Apache Hive
beeline> ! connect jdbc:hive2://node01:10000
scan complete in 2ms
Connecting to jdbc:hive2://node01:10000
Enter username for jdbc:hive2://node01:10000: root
Enter password for jdbc:hive2://node01:10000: 
Connected to: Apache Hive (version 1.1.0-cdh5.14.0)
Driver: Hive JDBC (version 1.1.0-cdh5.14.0)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://node01:10000> 

启动成功,可以直接操作业务了

<think> 根据用户查询,用户需要Hive 1.x版本嵌入模式的安装教程。结合引用内容,特别是引用[3]提到Hive1.2.2的安装教程,其中介绍了远程模式,但用户需要的是嵌入模式。嵌入模式通常指使用内置的Derby数据库存储元数据,且不需要额外的Metastore服务。 虽然引用中没有直接提供嵌入模式的详细步骤,但根据Hive的通用安装知识,嵌入模式是最简单的部署方式,适用于开发和测试环境。以下是基于Hive 1.x版本的嵌入模式安装步骤: ### Hive 1.x 嵌入模式安装教程 嵌入模式使用内嵌的Derby数据库存储元数据,无需额外配置数据库或启动Metastore服务。以下是安装步骤: 1. **环境准备**: - 已安装JDK(推荐JDK 1.7或更高版本)。 - 已安装Hadoop(请确保Hive版本与Hadoop版本兼容,参考[Apache Hive官网](http://hive.apache.org/downloads.html)的兼容性列表)。 - 配置好`JAVA_HOME`和`HADOOP_HOME`环境变量。 2. **下载Hive 1.x**: - 从Apache镜像站下载Hive 1.x版本,例如:[http://mirror.bit.edu.cn/apache/hive/](http://mirror.bit.edu.cn/apache/hive/)(注意选择1.x版本,如`apache-hive-1.2.2-bin.tar.gz`)。 3. **解压安装包**: ```bash tar -zxvf apache-hive-1.2.2-bin.tar.gz -C /opt/module cd /opt/module mv apache-hive-1.2.2-bin hive-1.2.2 ``` 4. **配置环境变量**: 编辑`/etc/profile`文件,添加以下内容: ```bash export HIVE_HOME=/opt/module/hive-1.2.2 export PATH=$PATH:$HIVE_HOME/bin ``` 执行`source /etc/profile`使配置生效。 5. **配置Hive(嵌入模式)**: - 进入`$HIVE_HOME/conf`目录,复制模板文件: ```bash cp hive-default.xml.template hive-site.xml ``` - 编辑`hive-site.xml`,**删除所有内容**,仅保留以下配置(因为嵌入模式无需额外元数据库配置): ```xml <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <!-- 临时目录设置 --> <property> <name>hive.exec.scratchdir</name> <value>/tmp/hive</value> </property> <!-- 本地仓库目录 --> <property> <name>hive.metastore.warehouse.dir</name> <value>/user/hive/warehouse</value> </property> </configuration> ``` > 注意:实际使用中,可能需要根据Hadoop集群调整路径权限。 6. **初始化Derby数据库**: - 在Hive安装目录下执行以下命令创建Derby元数据库(默认在当前目录生成`metastore_db`): ```bash schematool -initSchema -dbType derby ``` 成功后会显示类似信息: ``` Metastore connection URL: jdbc:derby:;databaseName=metastore_db;create=true ... Initialization script completed schemaTool completed ``` 7. **启动Hive CLI**: 执行`hive`命令进入交互式命令行: ```bash hive ``` 输入`show databases;`测试是否正常。 **注意事项**: - 嵌入模式仅支持单会话,同一时间只能有一个用户访问Derby数据库。 - 若需多用户访问,需改用本地模式(使用MySQL等外部数据库)或远程模式(独立Metastore服务)[^3]。 ### 常见问题 1. **Derby锁冲突**:如果遇到`ERROR: XSDD0: Failed to start database 'metastore_db'`,可能是由于上次会话未正常退出导致锁未释放。删除当前目录下的`metastore_db`和`derby.log`后重新初始化。 2. **Hadoop权限问题**:确保HDFS的`/user/hive/warehouse`目录存在且当前用户有读写权限: ```bash hadoop fs -mkdir -p /user/hive/warehouse hadoop fs -chmod g+w /user/hive/warehouse ``` §§相关问题§§ 1. Hive嵌入模式和本地模式有什么区别? 2. 如何将Hive嵌入模式升级到本地模式(使用MySQL)? 3. Hive 1.x版本支持哪些Hadoop版本? </think>### Hive 1.x 嵌入模式安装教程 嵌入模式Hive最简单的部署方式,使用内置Derby数据库存储元数据,无需额外配置数据库服务。以下是详细安装步骤: #### 一、环境准备 1. **系统要求**: - Linux系统(CentOS/Ubuntu等) - JDK 1.7+(推荐JDK 1.8) - Hadoop 2.x集群(需与Hive 1.x兼容,参考[兼容性列表](http://hive.apache.org/downloads.html)) ```bash # 检查Java版本 java -version # 检查Hadoop版本 hadoop version ``` 2. **下载Hive 1.x**: ```bash wget http://mirror.bit.edu.cn/apache/hive/hive-1.2.2/apache-hive-1.2.2-bin.tar.gz tar -zxvf apache-hive-1.2.2-bin.tar.gz -C /opt mv /opt/apache-hive-1.2.2-bin /opt/hive ``` #### 二、配置嵌入模式 1. **设置环境变量**(`~/.bashrc`): ```bash export HIVE_HOME=/opt/hive export PATH=$PATH:$HIVE_HOME/bin export HADOOP_USER_CLASSPATH_FIRST=true # 避免jar冲突 ``` 2. **创建必要目录**: ```bash hadoop fs -mkdir -p /user/hive/warehouse hadoop fs -chmod g+w /user/hive/warehouse ``` 3. **配置`hive-site.xml`**(`$HIVE_HOME/conf/hive-site.xml`): ```xml <configuration> <!-- 嵌入模式元数据存储路径 --> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:derby:;databaseName=metastore_db;create=true</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>org.apache.derby.jdbc.EmbeddedDriver</value> </property> <!-- HDFS仓库路径 --> <property> <name>hive.metastore.warehouse.dir</name> <value>/user/hive/warehouse</value> </property> </configuration> ``` #### 三、初始化与验证 1. **初始化Derby元数据库**: ```bash cd $HIVE_HOME schematool -initSchema -dbType derby ``` ✅ 成功提示:`schemaTool completed` 2. **启动Hive CLI**: ```bash hive > CREATE TABLE test(id INT); # 测试表创建 > SHOW TABLES; # 验证元数据存储 ``` #### 四、嵌入模式特点 1. **适用场景**: - 单用户开发/测试环境 - 快速原型验证 - 小型数据集处理 2. **限制说明**: - ❗ 仅支持单会话访问(多并发会锁定元数据库) - ❗ 数据存储在本地目录(迁移需备份`metastore_db`目录) - ❗ 不支持远程连接 > **注意**:生产环境建议升级到本地模式(MySQL)或远程模式(独立Metastore)[^3]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值