全量导入:将mysql表中全部数据都导入HDFS,如果HDFS中存在这个目录的话就会报错,默认存储的HDFS目录是 /user/root/XXX,括号中的内容都为解释,要运行的话就一行一行粘贴一起运行
bin/sqoop import (在sqoop的安装目录内,import表名是导入)
--connect jdbc:mysql://192.168.5.120:3306/myhive (连接:协议:数据库类型://ip地址:端口号/数据库)
--username root (用户名 root)
--password 123456 (密码 123456)
--table person (表 person)
--m 1 (--num-mappers:使用几个mapper,写1就可以)
增量导入:将数据库中某一字段,增加的导入,在hdfs上单独形成一个文件
bin/sqoop import (同上)
--connect jdbc:mysql://192.168.5.120:3306/myhive (同上)
--username root (同上)
--password 123456 (同上)
--table person (同上)
--incremental append (表明增量导入)
--check-column id (检查哪个字段,这里检查的是mysql数据库表中的id字段)
--last-value 4 (id字段最后一个id是4,那增量导入的话就是从id=5开始往后导入)
--m 1 (同上)
增量导入2或减量导入:设置where条件,通过条件可以判断减少的数据和增加的数据,控制更加灵活一些,例如可以通过时间来判断数据是哪一天生成的等
千万注意:where条件的地方都是用“”双引号引起来的!!!,要不然where条件失效
bin/sqoop import (同上)
--connect jdbc:mysql://192.168.5.120:3306/myhive (同上)
--username root (同上)
--password 123456 (同上)
--table person (同上)
--incremental append (表明增量导入)
--where “age>30“ (where条件判断,精华所在,双引号引起来)
--check-column id (检查列,好像没有什么卵用)
-m 1 (同上)