在安装完Hive之后,需要将Hive的元数据写入到MySQL的metastore数据库。
如果说MySQL中缺乏了关于Hive的相关配置,Hive是无法正常启动和运行的。
如果说MySQL进行重装,则需要对Hive服务进行重新的配置。
#登录MySQL [atguigu@hadoop102 software]$ mysql -uroot -p123456 #创建Hive元数据库 mysql> create database metastore; mysql> quit;
cp /opt/download/mysql-connector-j-8.0.33.jar lib/
ls lib/|grep guava # guava-19.0.jar rm -f lib/guava-19.0.jar find /opt/software/hadoop313/ -name guava* #/opt/software/hadoop313/share/hadoop/common/lib/guava-27.0-jre.jar #/opt/software/hadoop313/share/hadoop/hdfs/lib/guava-27.0-jre.jar cp /opt/software/hadoop313/share/hadoop/hdfs/lib/guava-27.0-jre.jar lib/
[atguigu@hadoop102 software]$ vim $HIVE_HOME/conf/hive-site.xml 添加如下内容: javax.jdo.option.ConnectionURL mysql jdbc:mysql://localhost:3306/hive312?createDatabaseIfNotExist=true javax.jdo.option.ConnectionDriverName com.mysql.cj.jdbc.Driver javax.jdo.option.ConnectionUserName root javax.jdo.option.ConnectionPassword 123456 hive.metastore.warehouse.dir /hive312/warehouse
在初始化之前,需要先到MySQL数据库下查看数据库列表中是否存在hive312
数据库,如果存在先删掉,否则会导致元数据库的创建过程失败。
schematool -dbType mysql -initSchema -verbose
#首先启动元数据服务 nohup hive --service metastore 1>/dev/null 2>&1 & #1、方法一 hive客户端 hive #2、方法二 基于metastore和hiveserver2的beeline #启动hiveserver2服务 nohup hive --service hiveserver2 1>/dev/null 2>&1 & beeline -u jdbc:hive2://single01:10000