hive 安装配置好之后(数据库为mysql)报出JAVA.LANG.RUNTIMEEXCEPTI……JAVA.LANG.RUNTIMEEXCEPTI错误解决办法

写在前面
//20220122
本文用于记录如标题报错的解决办法

错误产生原因:

  • 是否开放mysql端口
    • 没有则开放(3306),最好关闭防火墙
  • 是否允许root用户(或者指定用户)在任意ip远程访问
    • 没有则将user表中root对应的host改为‘%’————代表该用户可以从任意ip访问
    • 设置完之后别忘了用grant命令给root用户所有表的权限
    • 全部设置完之后使用flush privileges命令来刷新配置
  • 是否在hive/conf目录下配置好hive-site.xml文件
    • 没有则去配置(原装derby数据库不用配置,而mysql则需要配置,具体内容网上有,根据自己需要配置)
  • 是否使用hive/bin目录下的schematool工具来初始化数据库
    • 没有则使用schematool -initSchema -dbType mysql命令初始化
      • 注意:如果先前在某个文件夹下初始化过derby数据库,则需要先把derby数据库生成的文件夹以及日志文件删掉
  • 是否开启hive的两个服务(hive-2.x.x需要开启两个不同的服务)
    • 如果没有则执行以下两条语句(在hive/bin目录下)
      • nohub hive --service metastore &
      • nohub hive --service hiveserver2 &
  • 以上条目如果全部完成,应该可以成功进入hive命令行界面(前提是成功启动hadoop集群、成功启动mysql服务)并执行相关hql语句
  • 成功截图如下:
    hive 安装配置好之后(数据库为mysql)报出JAVA.LANG.RUNTIMEEXCEPTI……JAVA.LANG.RUNTIMEEXCEPTI错误解决办法
上一篇:Try Again 的生活是 Boring 的


下一篇:UVA1608 不无聊的序列 Non-boring sequences