org.apache.hadoop.hive.metastore.HiveMetaException: Failed to get schema version

在初始化hive 报错  详细的报错信息 如下

[root@node3 conf]# schematool -dbType mysql -initSchema
Metastore connection URL:     jdbc:mysql://localhost:3306/hive
Metastore Connection Driver :     com.mysql.jdbc.Driver
Metastore connection User:     root
org.apache.hadoop.hive.metastore.HiveMetaException: Failed to get schema version.
Underlying cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException : Unknown database 'hive'
SQL Error code: 1049
Use --verbose for detailed stacktrace.
*** schemaTool failed ***

错误原因其实报错的信息都告诉咱了没仔细的去看 就顾着搜索异常了  坏习惯

不多说 先分析 

Underlying cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException : Unknown database 'hive'

未知的库  也就说连接上mysql 数据库的时候没有创建 hive 库 

创建的办法 

jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true  把这句话加在连接 字符串 

 这句话就是说 hive 数据库不存在的话 创建数据库  因为是刚安装好的mysql  里面是没有hive库的  希望遇到相同问题的小伙伴 快速解决问题吧 我也是初学大数据

还有类似的 提示 驱动找不到的  好好检查你的配置文件  hive-site.xml看看指定的读取驱动的方式是否正确

我把我的贴出来供大家参考 同时 我自己也记录一下 搞了一上午了 重点我画粗线了供大家参考吧

<configuration>
    <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>root</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>root</value>
    </property>
   <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
    </property>
  <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
    </property>
 <property>
    <name>datanucleus.schema.autoCreateAll</name>
    <value>true</value>
  </property>
  <property>
                <name>hive.metastore.schema.verification</name>
                <value>false</value>
        </property>

</configuration>

 

这是系统建 的 成功后会在你连接的库里看到有hive这个 库 对应的就是你的URL 里面的hive 

jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值