我用sqoop 导入hdfs 没有问题。但是导入Hive 就遇到一个诡异的错误。
hive> show databases;
OK
default
hive_db1
hive_db2
Time taken: 0.367 seconds, Fetched: 3 row(s)
我在hive 能看到 hive_db1 的数据库,
但是执行 下面语句就报 没有hive_db1 数据库的错误。下面是执行的语句。
sqoop import --connect jdbc:mysql://172.30.168.247:3306/test --username usqoop --password 123 --query “SELECT id,va,_time FROM test1 where $CONDITIONS” -m 1 --target-dir /DB/mysql_table1 --hive-import --hive-table hive_db1.mysql_table1 --fields-terminated-by “\t”
下面是从hive.log 查到的日志。实在想不通了。
2020-03-20 13:05:09,338 WARN [main]: metastore.ObjectStore (ObjectStore.java:getDatabase(628)) - Failed to get database hive_db1, returning NoSuchObjectException
2020-03-20 13:05:09,349 ERROR [main]: ql.Driver (SessionState.java:printError(1110)) - FAILED: SemanticException [Error 10072]: Database does not exist: hive_db1
org.apache.hadoop.hive.ql.parse.SemanticException: Database does not exist: hive_db1