七、VirtualBox-6.0.4-128413-Win-CentOS7 Hive远程模式 安装

  • 首先准备好一个直接在虚拟机上安装了MySQL的虚拟机(用于远程模式操作),还有安装hive的虚拟机需要安装好Hadoop(总共需要两个虚拟机)并且在里面创建好一个库;
    在这里插入图片描述
    在这里插入图片描述
  • 把下载好的hive压缩包在Hadoop服务器上解压
    **注意:**下载的hive版本最好要和安装过的Hadoop版本对应
    cd /usr/soft/ 进入此路径
    tar -zxvf apache-hive-2.3.5-bin.tar.gz 解压
    在这里插入图片描述
  • mv apache-hive-2.3.5-bin hive2.3.5
    给解压的文件夹改个短一点的名字,可以乎略这一步
  • 因为要链接数据库,所以这一步要将mysql数据驱动复制到hive的lib文件夹中(idea导入过数据库驱动的架包的话,去本地的jarstore里面皆可以找到)
    在这里插入图片描述
  • 修改hive-site.xml文件
    cd hive2.3.5/conf/ 进入到此路径
    cp hive-default.xml.template hive-site.xml 拷贝模版,生成这个文件
    在这里插入图片描述
    把没用的东西删掉,改成下面这样在这里插入图片描述
<configuration>
  <property>
    <name></name>
    <value></value>
  </property>
    <property>
    <name></name>
    <value></value>
  </property>
    <property>
    <name></name>
    <value></value>
  </property>
    <property>
    <name></name>
    <value></value>
  </property>
</configuration>

下面开始填充(填充的东西去这里找)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
地址和库名要是变了记得修改

<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://192.168.1.5:3306/hive</value>
  </property>
    <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
  </property>
    <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
  </property>
    <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>ok</value>
  </property>
</configuration>

在这里插入图片描述
修改后记得保存

  • 下面配置环境变量
    vi /etc/ptofile

在这里插入图片描述
路径写自己的哦(/usr/soft/hive2.3.5/)

export HIVE_HOME=/usr/soft/hive2.3.5/
export PATH=$PATH:$HIVE_HOME/bin

在这里插入图片描述

  • 下面先启动Hadoop(如果IP换了的话记得改它的core-site.xml文件哦)
    不管是不是第一次安装,如果在启动Hadoop这个过程中出现询问,或者下面一步查询进程时缺少了5各种的其中一个,那就重启虚拟机,(参照前面安装Hadoop的帖子)然后再重新生成无秘公私钥后再重新启动Hadoop,应该就没问题了;
    在这里插入图片描述
  • 启动hive
    如果这里报了这个错,估计是前面的hive-site.xml文件里面写错了(中文字符、空格啥的或者夺了什么东西都有可能)
  • 如果安装的是1.2.2的版本,需要放一个mysql-connection-java.jar 到hive的lib路径下,否则会报错
    在这里插入图片描述在这里插入图片描述
    正常启动时下面这样的
    在这里插入图片描述
  • 初始化hive, 将mysql作为hive的元数据库
    !schematool -dbType mysql -initSchema;
    (前面加个感叹号是声明外部命令,否则在hive历史无法执行外部命令的)此处参考:https://www.jianshu.com/p/d9cb284f842d?tdsourcetag=s_pcqq_aiomsg
    在这里插入图片描述
    这是你会发现库里面多出来一堆表,这是正常的,没有的话就说明出问题了
    在这里插入图片描述
  • 测试
    create table userinfos(userid int,username string,birthday date);
    !hadoop fs -lsr /;
    前面加感叹号是声明此命令是外部命令,否则在hive里面无法使用其他的外部命令
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44651989/article/details/91485137