Hive单节点安装部署

Hive单节点安装部署

hive下载安装

1、下载hive安装包

可以去官网上下载Index of /dist/hive

2、下载mysql驱动包

可以去华为云镜像站中下载Index of mysql-local/Downloads/Connector-J

3、将hive安装包上传到linux上

image-20241108173108931

4、解压hive安装包到soft目录,并重命名为hive-3.1.2
tar -zxvf /usr/local/soft/package/apache-hive-3.1.2-bin.tar.gz -C ../

cd ..

mv apache-hive-3.1.2-bin hive-3.1.2

image-20241108203437576

5、备份配置文件
cd hive-3.1.2/conf/

cp hive-default.xml.template hive-site.xml
6、修改hive-site.xml
vim hive-site.xml

<!--以下是修改内容>

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

#########################第一处#################################
<configuration>
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.cj.jdbc.Driver</value>
  </property>

#########################第二处#################################
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://master:3306/hive?useSSL=false&amp;createDatabaseIfNotExist=true&amp;characterEncoding=utf8&amp;useUnicode=true</value>
  </property>

#########################第三处#################################
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
  </property>

#########################第四处#################################
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>123456</value>
  </property>

#########################第五处#################################
  <property>
    <name>hive.metastore.uris</name>
    <value>thrift://master:9083</value>
  </property>

#########################第六处#################################
  <property>
	<name>hive.server2.enable.doAs</name>
	<value>false</value>
  </property>
    
#########################第七处#################################
<property>
<name>hive.querylog.location</name>
<value/>
</property>

 
#########################第八处#################################
(同上)
<property>
<name>hive.exec.local.scratchdir</name>
<value/>
</property>

 
#########################第九处#################################
(同上)
<property>
<name>hive.downloaded.resources.dir</name>
<value/>
</property>
</configuration>

#########################第十处#################################
3214行的描述删掉



个人建议下载到window上查找键来修改值
注意:3214行的描述的键是 <name>hive.txn.xlock.iow</name>
删除
<description>
      Ensures commands with OVERWRITE (such as INSERT OVERWRITE) acquire Exclusive locks for&#8;transactional tables.  This ensures that inserts (w/o overwrite) running concurrently are not hidden by the INSERT OVERWRITE.
</description>

三个节点上的都要改

image-20241108204257090

7、在conf目录下创建 log4j.properties配置文件
vim log4j.properties

#添加一下内容

# 将日志级别改成WARN,避免执行sql出现很多日志
log4j.rootLogger=WARN,CA
log4j.appender.CA=org.apache.log4j.ConsoleAppender
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
log4j.appender.CA.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n%

image-20241108204746041

8、上传mysql驱动
# 将nysql驱动包上传到hive的lib目录下
mysql-connector-java-8.0.29.jar
9、将hadoop的jline-0.9.94.jar的jar替换成hive的版本
#先查看自己/usr/local/soft/hadoop-3.1.1/share/hadoop/yarn/lib/里有没有jline.jar包,若没有则不用操作
cp /usr/local/soft/hive-3.1.2/lib/jline-2.12.jar /usr/local/soft/hadoop-3.1.1/share/hadoop/yarn/lib/
10、初始化hive元数据库
#进入hive的bin目录
#执行
schematool -dbType mysql -initSchema
11、启动hive元数据服务
#建议将日志文件写入一个固定目录,在hive根目录下创建/startLogs/
nohup hive --service metastore >> /usr/local/soft/hive-3.1.2/startLogs/metastore-service.log &
12、启动hive
# 进入hive
hive

# 测试
# 1、创建表
CREATE EXTERNAL TABLE IF NOT EXISTS student(
    id string ,
    `name` string ,
    age string  ,
    gender string  ,
    clazz string 
) 
ROW FORMAT DELIMITED 
    FIELDS TERMINATED BY ',' 
STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' 
    OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'  
location '/data/student'; 

# 2、执行sql查询数据
select clazz,count(1) as num from student group by clazz;

hive常见问题

1、hadoop未启动,就开始执行hive命令

2

解决方案:启动hadoop

2、hadoop处于安全模式

3

解决方案:

1、等着,等hadoop日志和快照数据恢复完毕,自动离开安全模式

2、使用命令强制离开

3、元数据服务没开,操作不了sql语句

4

解决方案:nohup hive --service metastore &

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值