下午配置hive的时候,cp hive-default.xml.tmplate hive-dfault.xml。更改里面的各种配置,其中有一个meta配置项,改为了本地mysql。但是在执行./bin/schematool -dbType mysql -initSchema。一直配置不生效,还是去读取jdbc:derby,不回去读取mysql配置,google,baidu了半天。说版本不对的,有说HIVE_CONF_DIR配置的等好多。
错误消息如下,errorcode2;
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
Metastore connection URL: jdbc:derby:;databaseName=metastore_db;create=true
Metastore Connection Driver : org.apache.derby.jdbc.EmbeddedDriver
Metastore connection User: APP
Starting metastore schema initialization to 2.1.0
Initialization script hive-schema-2.1.0.mysql.sql
Error: Syntax error: Encountered "<EOF>" at line 1, column 64. (state=42X01,code=30000)
org.apache.hadoop.hive.metastore.HiveMetaException: Schema initialization FAILED! Metastore state would be inconsistent !!
Underlying cause: java.io.IOException : Schema script failed, errorcode 2
Use --verbose for detailed stacktrace.
*** schemaTool failed ***
最后打开默认的template看到前几行的warning。瞬间泪崩啊。。。
新版本的hive配置文件太坑爹啊。“You must make your changes in hive-site.xml instead.”你说你为啥不叫hive-site.xml.template呢???
<!-- WARNING!!! This file is auto generated for documentation purposes ONLY! -->
<!-- WARNING!!! Any changes you make to this file will be ignored by Hive. -->
<!-- WARNING!!! You must make your changes in hive-site.xml instead. -->
用红色标记处理。长点心了。