SemanticException 10072:数据库不存在 (Sqoop)



我使用 sqoop 命令创建了一个 hive 内部表。

sqoop import -Dmapreduce.map.memory.mb=4096 
--driver com.mysql.jdbc.Driver 
--connect 'jdbc:mysql://{mysql_url}' 
--username 'xxxx' 
--password 'xxxx' 
--input-fields-terminated-by 't' 
--split-by id 
--target-dir {hdfs_path}
--verbose -m 1 
--hive-drop-import-delims 
--fields-terminated-by 't' 
--hive-import 
--hive-table '{table_name}' 
--query "select id from temp WHERE $CONDITIONS LIMIT 10"

我在里面创建了一个表,它正在工作。

19/01/06 19:33:44 DEBUG hive.TableDefWriter: Load statement: LOAD DATA INPATH 'hdfs://hadoop/{hdfs_path}' INTO TABLE `tmp.temp`
19/01/06 19:33:44 INFO hive.HiveImport: Loading uploaded data into Hive
19/01/06 19:33:44 DEBUG hive.HiveImport: Using in-process Hive instance.
19/01/06 19:33:44 DEBUG util.SubprocessSecurityManager: Installing subprocess security manager
Logging initialized using configuration in jar:file:${HADOOP_HOME}/hive-1.1.0-cdh5.14.2/lib/hive-common-1.1.0-cdh5.14.2.jar!/hive-log4j.properties

它在hdfs仓库位置创建。

$ hadoop dfs -ls {hdfs_path}
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.
19/01/06 19:43:23 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 2 items
 0 2019-01-06 19:33 {hdfs_path}/_SUCCESS
65 2019-01-06 19:33 {hdfs_path}/part-m-00000.gz

但这是一个错误:

FAILED: SemanticException [Error 10072]: Database does not exist: tmp

我已经蜂巢站点.xml进入sqoop conf目录。

cp ${HIVE_HOME}/conf/hive-site.xml ${SQOOP_HOME}/conf/hive-site.xml

"Hive.metastore.uris"被设置为本地和远程节俭。

我该怎么办?帮帮我。谢谢

请使用此sqoop命令将数据从sqoop导入到具有现有表的hive并根据您的要求更改子句.我刚刚修改了一些子句,并根据命令中的要求添加了一些子句

ubuntu@localhost:/usr/local/hive$ sqoop import -Dmapreduce.map.memory.mb=4096  --connect 'jdbc:mysql://localhost/test' --username 'root' -P --input-fields-terminated-by ',' --split-by id  --target-dir /user/hive/warehouse/test_hive --hive-drop-import-delims --fields-terminated-by ',' --hive-import --hive-database default --hive-table test_hive --query "select id from test WHERE $CONDITIONS LIMIT 10"  --driver com.mysql.jdbc.Driver --delete-target-dir

快乐的Hadooppppppppp

最新更新