在我的hdfs中已经存在目录“mydatabase”,我正在尝试用sqoop更新mysql中hdfs的数据
但是,在import all tables命令中,hdfs目录中没有覆盖选项,只有在配置单元中
我正在尝试执行以下命令:
sqoop import-all-tables
--connect jdbc:mysql://10.20.20.43/mydatabase
--username blizzard
--password blizzard
--warehouse-dir /user/hdfs/mydatabase -m 1
--hive-database mydatabase
--hive-import
--hive-overwrite
--null-string '\\N'
--null-non-string '\\N'
--verbose
但我有个错误:
17/05/03 19:48:13 ERROR tool.ImportAllTablesTool:
Encountered IOException running import job:
org.apache.hadoop.mapred.FileAlreadyExistsException:
Output directory hdfs://10.20.20.43:8020/user/hdfs/mydatabase/table1
already exists
我总是想导入所有的数据,因为我不知道哪一个数据可能被更改了。
最好的方法是什么?
谢谢!
编辑:
这个 --delete-target-dir
命令仅用于 import
也不是为了 import-all-tables
根据文件https://sqoop.apache.org/docs/1.4.6/sqoopuserguide.html
1条答案
按热度按时间bvpmtnay1#
您可以删除所有数据以再次重写它们。尝试之前: