粘贴复制时记得把\后面的空格和注释删除!!!
1.查看数据库
sqoop list-databases \ #查看数据库的命令 --connect jdbc:mysql://master:3306 \ #数据库连接地址 --username root \ #用户名 --password root #密码
2.根据mysql表创建hive表
sqoop create-hive-table \
--connect jdbc:mysql://master:3306/test \
--username root \
--password root \
--table user \ #指定mysql的表
--hive-table hive_user #创建hive上的表,表存在报错
3.mysql导入数据到hive
sqoop import \ --connect jdbc:mysql://master:3306/test \ --username root \ --password root \ --table user \ --fields-terminated-by "\t" \ #指定表的分隔符 --hive-import \ --create-hive-table \ #自动创建hive表 --hive-overwrite \ #覆写 --hive-database test \ --hive-table user_mysql \ -m 1 #maptask数量
4.mysql导入数据到hbase
sqoop import \
--connect jdbc:mysql://master:3306/test \
--username root \
--password root \
--table user \
--hbase-create-table \
--hbase-table user_hbase \
--column-family info \ #指定列族
--hbase-row-key id #指定rowkey
--m 1
5.导出数据到mysql
sqoop export \
--connect jdbc:mysql://master:3306/test \
--username root \
--password root \
--table user \
--export-dir /user/hive/warehouse/test.db/user_mysql \#这个路径是hdfs上hive表的路径
--input-fields-terminated-by "\t" \
--m 1
6.增量导入数据到hbase
sqoop import \
--connect jdbc:mysql://master:3306/test \
--username root \
--password root \
--table user \
--fields-terminated-by '\t' \
--incremental append \
--check-column id \
--target-dir /user/test1 \
--last-value 1 \
--hbase-table user_hbase \
--column-family info \
--hbase-row-key id
-m 1
7.增量导入数据到hive
sqoop import \
--connect jdbc:mysql://master:3306/test \
--username root \
--password root \
--table user \
--fields-terminated-by '\t' \
--incremental append \
--check-column id \
--target-dir /user/test1 \
--last-value 1 \
--hive-import \
--hive-database test \
--hive-table hive_mysql \
-m 1
8.导出数据
sqoop export \ --connect jdbc:mysql://master:3306/test \ --username root \ --password root \ --table user \ --export-dir /user/hive/warehouse/test.db/user_mysql \ --input-fields-terminated-by "\t" \ --m 1
努力到无能为力,拼搏到感动自己