一、Exception in thread “main” java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: KaTeX parse error: Expected '}', got 'EOF' at end of input: …a.io.tmpdir%7D/%7Bsystem:user.name%7D
原因是:
<property>
<name>Hive.exec.local.scratchdir</name>
<value>${system:Java.io.tmpdir}/${user.name}</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>${system:java.io.tmpdir}/${hive.session.id}_resources</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
<property>
<name>hive.server2.logging.operation.log.location</name>
<value>/home/lch/software/Hive/apache-hive-2.1.1-bin/tmp/${system:user.name}/operation_logs</value>
<description>Top level directory where operation logs are stored if logging functionality is enabled</description>
</property>
里面的配置项需要明确:
<property>
<name>hive.exec.local.scratchdir</name>
<value>/opt/apps/hive-3.1.2/tmp//${system:user.name}</value>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>/opt/apps/hive-3.1.2/tmp/${hive.session.id}_resources</value>
</property>
<property>
<name>hive.server2.logging.operation.log.location</name>
<value>/opt/apps/hive-3.1.2/tmp/root/operation_logs</value>
</property>
二:[Fatal Error] hive-site.xml:3231:97: Character reference “” is an invalid
这个原因是hive-site.xml文件的第3231行有一个特殊符号"",实在描述里面的,不影响配置删了就行。
三:Error: Syntax error: Encountered “” at line 1, column 64. (state=42X01,
这个原因是我配置mysql的jdbc连接时,没有把hive-site.xml的中原本配置给deby的连接配置删除,导致启动时,会默认使用deby方式,就会报错。
解决方案:删除deby对应的ConnectionURL、ConnectionUserName、ConnectionDriverName、ConnectionPassword这几个配置项,并且正确配置mysql的这些配置项:
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF-8</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>123456</value>
</property>
这里注意Connection都是大写C写成小写会报错
四、conf.HiveConf: Found configuration file null
这里的原因是配置文件需要我们自己复制一份,
cp hive-default.xml.template hive-site.xml
启动时不回去找hive-default.xml文件,对这个文件配置更改时没有用的,所以就会报错:找不到配置文件