Hive使用中遇到的幾個小問題

1. 在Hive中使用show tables;等命令報錯:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes

解決辦法: 到mysql中的hive數據庫裏執行 alter database hive character set latin1;mysql

改變hive元數據庫的字符集,問題就能夠解決! 可是這時你若是建一個表裏有中文,就會報錯了。sql

2. Sqoop不能將數據導入到Hive中,報錯:Warning: /usr/lib/hbase does not exist! HBase imports will fail. Please set $HBASE_HOME to the root of your HBase installation.

解決辦法: 在配置文件中將HBase和ZooKeeper的配置去掉就能夠了。數據庫

SQOOP_HOME/bin/configure-sqoop 中關於 HBASE 和ZOOKEEPER去掉。oop

3. 若是在Sqoop導數據時報錯,提示文件已經存在,這時確定是存在了。能夠去HDFS中找找看,通常會是在/user/${user_name}目錄下有一個。

若是使用了--create-hive-table 選項,那麼文件和表都必需要清掉。code

4. LOAD時,必定要指定數據類型,不然默認的ByteArray沒法轉成String

5. jdbc驅動忘拷到lib目錄了

####6. show tables時log報:MetaException(message:Version information not found in metastore. )orm

hive.metastore.schema.verification設爲falseci

<name>hive.metastore.schema.verification</name>
  <value>false</value>
相關文章
相關標籤/搜索