当我通过命令时:
$ sqoop create-hive-table --connect'jdbc:sqlserver://10.100.0.18:1433; username = cloud; password = cloud123; database = hadoop'-table cluster
出现一些错误和警告,最后说, 无法启动数据库'/ var / lib / hive / metastore / metastore_db',请参阅下一个例外以获取详细信息[再次显示导入错误列表]
最后它说hive退出了satus 9
这是什么问题?我是sqoop和hive的新手。请有人帮助我。
答案 0 :(得分:1)
正确的语法是
sqoop import --connect' jdbc:sqlserver://10.100.0.18:1433 / hadoop' --username cloud --password cloud123 --table cluster --hive-import
答案 1 :(得分:0)
我想您可能想检查您是否对指定目录具有写权限,以及是否正在创建名为metastore_db的目录
答案 2 :(得分:0)
当您使用默认Hive配置运行Sqoop时,通常会显示此消息。默认情况下,Hive将使用derby数据存储区,该数据存储区仅在非常基本的测试用例中可用。我建议重新配置你的hive实例,使用其他一些关系数据库作为数据存储后端(MySQL,PostgreSQL,Oracle)。
答案 3 :(得分:0)
你的语法都错了。语法是$ sqoop tool-name [tool-arguments]
$ sqoop import --create-hive-table --connect'jdbc:sqlserver://10.100.0.18:1433 / hadoop'--username cloud --password cloud123 --table cluster
答案 4 :(得分:0)
使用sqoop粘贴蜂巢导入的示例调用。这可以帮助您进一步纠正语法。请记住,从本质上讲,您至少需要给出以下命令才能使其正常工作。
sqoop import --connect jdbc:mysql://localhost/RAWDATA --table geolocation --username root --password hadoop --hive-import --create-hive-table --driver com.mysql.jdbc.Driver --m 1 --delete-target-dir