如何将MySql表导入hive中的目标数据库?

时间:2015-05-04 06:35:42

标签: hadoop hive sqoop

我正在使用hadoop版本2.6.0& sqoop版本1.4.5。我已使用以下sqoop命令成功将SQL表 tblSystem 导入到配置单元中:

sqoop import --connect jdbc:mysql://ip_Address:port_no/MySQL_database_name --username user --password passwd --table tblSystem -m 1 --hive-import

但是,我注意到这个命令将SQL表导入到'默认'蜂巢中的数据库。什么是将导入定位到特定配置单元数据库的命令,例如 myHiveImport

提前致谢...

1 个答案:

答案 0 :(得分:3)

将MySQL表导入Hive:

sqoop import --connect jdbc:mysql://localhost:3306/mysqldatabase --table mysqltablename --username mysqlusername --password mysqlpassword --hive-import --hive-table hivedatabase.hivetablename --warehouse-dir /user/hive/warehouse

要做出的更改:

mysqldatabase - 您的mysql数据库名称,从中将表导入到配置单元。

mysqltablename - 要导入的mysql表名

mysqlusernamemysqlpassword - 分别是mysql用户名和密码。

hivedatabase - 您的配置单元数据库名称

hivetablename - 要在配置单元中创建的表名。

试试这个:

sqoop import --connect jdbc:mysql://ip_Address:port_no/MySQL_database_name --username user --password passwd --table tblSystem -m 1 --hive-import --hive-table myHiveImport.tblSystem --warehouse-dir /user/hive/warehouse

--warehouse-dir位置更改为指向您的HDFS配置单元存储路径。