Sqoop数据导入导出命令总结

一、导入导出基本命令

1、列出mysql数据库中的所有数据库命令
   #  sqoop list-databases --connect jdbc:mysql://10.X.X.X:3306/ --username root --password 123456

  2、连接mysql并列出数据库中的表命令
   # sqoop list-tables --connect jdbc:mysql://10.X.X.X/test --username root --password 123456
   命令中的test为mysql数据库中的test数据库名称  username password分别为mysql数据库的用户密码   
   3、将关系型数据的表结构复制到hive中
 sqoop create-hive-table --connect jdbc:mysql://10.X.X.X/test --table username --username root --password 123456 --hive-table test
其中 --table username为mysql中的数据库test中的表   --hive-table test 为hive中新建的表名称
   4、从关系数据库导入文件到hive中
sqoop import --connect jdbc:mysql://10.X.X.X/test --username root --password mysql-password --table t1 --hive-import

  5、将hive中的表数据导入到mysql中

./sqoop export --connect jdbc:mysql://10.X.X.X/test --username root --password admin --table uv_info --export-dir /user/hive/warehouse/uv/dt=2011-08-03(hive数据表的存储路径)

二、hive数据导入mysql中遇见的问题及解决方法

1、基本环境:使用sqoop必须安装sqoop环境,然后在bin目录下执行,并且确保关系型数据库与hive数据库以及sqoop在一个集群下

2、步骤:查看hive数据表存储路径

2、执行命令

3、遇见的问题

1)

解决办法:指定分区文件,直到路径下不在划分小文件

2)mysql数据库和hive数据表中字段类型不一致,导入任务失败-> 解决办法:只有保证字段类型以及列数一致,才能导入成功

 

 


版权声明:本文为qq_35779794原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。