hive的常见问题
1. org.apache.thrift.transport.TTransportException: Could not create ServerSocket on address 0.0.0.0/0.0.0.0:10000
问题:hive --service hiveserver 启动hiveserver服务
解决方法:端口被占用 ,kill 该端口进程或者重新制定端口 hive --service hiveserver -p 10001
2. Error in metadata: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
解决方法:./hive -hiveconf hive.root.logger=DEBUG,console
输出错误日志,进行修改。一般都是hive用户mysql库权限问题。
3. Error: dl failure on line 864
Error: failed /home/app/jdk1.7.0_21/jre/lib/i386/client/libjvm.so, because /home/app/jdk1.7.0_21/jre/lib/i386/client/libjvm.so: cannot restore segment prot after reloc: Permission denied
解决方法: /usr/sbin/setenforce 0
4. 运行Hadoop程序 时,出现 Filesystem closed异常。
通过查证是设置了缓存。需要取消缓存。
通过修改配置文件core-site.xml:
<property>
<name>fs.hdfs.impl.disable.cache</name>
<value>true</value>
</property>
程序仍然出现上述问题。
在程序中,加上这条语句:JobConf jobConf.set("fs.hdfs.impl.disable.cache", "true");
程序运行成功。
5 Failed with exception Unable to move sourcehdfs://vmtmstorm01:8020/test to destination hdfs://vmtmstorm01:8020/user/hive/warehouse/ptest/name=ww/test
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask
原因:由于hive的用户权限问题,hive在源目录或者是目的目录没有操作的权限