启动报错如下:
java.lang.RuntimeException: The root scratch dir: /tmp/hive on HDFS should be writable. Current permissions are: rwx--x--x
网上一大堆说是把hdfs上的/tmp权限改成777,如果真是这么简单,那按提示修改权限就是了,但实际查看/tmp的权限没问题,/tmp/hive的权限也没问题,如下图:
这个问题卡了我大半天,后来才猜想应该是/user/hive的权限问题导致的,直接删除/user/hive,重建后,把/user/hive的owner改为hive,重新启动就好了:
hdfs dfs -rm -r /user/hive
hdfs dfs -mkdir /user/hive
hdfs dfs -chown hive /user/hive
也要保证本地目录/tmp/hive的权限正确:
后记:hive这个报错误导人,报的是/tmp/hive的权限问题,实际上则是/user/hive目录的权限问题,所以很是误人子弟!!!