2 unflynaomi unflynaomi 于 2014.08.03 22:04 提问

hive 0.13.1元数据库无法变成mysql

我把hive-0.12升级成0.13.1版本,先在mysql里执行了source upgrade-0.12.0-to-0.13.0.mysql.sql成功了,然后在mysql中创建了一个hivenew(0.12版的是hive)用户,并给予了权限,更改了hive-site.xml文件如下:

1.  <property>  
2.    <name>hive.stats.dbclass</name>  
3.    <value>jdbc:mysql</value>  
4.    <description>The default database that stores temporary hive statistics.</description>  
5.  </property>  
6.    
7.  <property>  
8.    <name>hive.stats.jdbcdriver</name>  
9.    <value>com.mysql.jdbc.Driver</value>  
10.   <description>The JDBC driver for the database that stores temporary hive statistics.</description>  
11. </property>  
12.   
13. <property>  
14.   <name>hive.stats.dbconnectionstring</name>  
15.   <value>jdbc:mysql://localhost:3306/hivenew</value>  
16.   <description>The default connection string for the database that stores temporary hive statistics.</description>  
17. </property>  

<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://localhost:3306/hivenew?createDatabaseIfNotExist=true</value>
  <description>JDBC connect string for a JDBC metastore</description>
</property>

<property>
  <name>javax.jdo.option.ConnectionDriverName</name>
  <value>com.mysql.jdbc.Driver</value>
  <description>Driver class name for a JDBC metastore</description>
</property>
<property>
  <name>javax.jdo.option.ConnectionUserName</name>
  <value>hivenew</value>
  <description>username to use against metastore database</description>
</property>

<property>
  <name>javax.jdo.option.ConnectionPassword</name>
  <value>hivenew</value>
  <description>password to use against metastore database</description>
</property>

保存后,把mysql的jdbc复制到了lib下,然后启动hive,虽然能正常显示hive>,和show tables;
但是在mysql里根本没有hivenew这个数据库,我装0.12时装好后自动就有了hive数据库,而show tables,也没有我在hivenew下创建的表格,而且经常出现Caused by: ERROR XSDB6: Another instance of Derby may have already booted the database /opt/apache-hive-0.13.1-bin/metastore_db.这样的错误
可见元数据库仍旧是derby,更诡异的是我把hive-site.xml删掉之后,hive它仍旧工作良好能正常显示hive>,和show tables,难道hive-site.xml的配置都无关紧要吗?求求大家帮帮我,急死人了

3个回答

sky_walker85
sky_walker85   Rxr 2014.11.18 16:44
已采纳

很明显的是hive-site.xml文件没生效,即使删除了该文件,默认也使用的是derby数据库。针对这种情况,楼主可以重新创建hive-site.xml文件,然后修改为mysql,再重启hive

long1657
long1657   2014.12.18 14:01

谢谢哈,我这边解决了!从新编译了下!

long1657
long1657   2014.12.09 21:07

请问楼主,你的这个问题是怎么解决的啊?

unflynaomi
unflynaomi http://blog.csdn.net/unflynaomi/article/details/38382273我写了个博客上面有解决办法
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片