1.sqoop命令入门
sqoop hele: 查看所有帮助命令sqoop help command: 查看某个命令的使用命令分解 --connect 指定关系型数据库的连接url mysql:jdbc:mysql://主机:3306 --username 指定mysql的用户名 --password 指定mysql的密码 --table 指定mysql中需要的表名 -m 指定maptask的个数 --target-dir 指定导入的hdfs的目标路径 --fields-terminated-by 指定列之间的分隔符 --columns 指定需要导入的列名 --where 指定过滤条件 --query 指定查询语句 --split-by 指定多个maptask切分依 --lines-terminated-by 指定数据的行的分隔符 默认 \n --hive-overwrite 覆盖导入 --create-hive-table 在hive中创建表 --hive-database 指定hive的数据库 --hive-table 指定hive中的表名2.MySQL导入HDFS
#普通导入 sqoop import \ --connect jdbs:mysql://hdp01:3306/bd1810 \ --username root \ --password root \ --table stu_test \ --targt-dir /user/BigTree/stu_test 指定HDFS中的目标路径,若不指定默认user/${username}/tableName --fields-terminated-by '\t' 指定导出数据列间的分隔符 -m 1 #过滤导入 sqoop import \ --connect jdbc:mysql://hdp01:3306/mysql \ --username root \ --password root \ --columns "name" \ --where "help_keyword_id>400" \ 指定过滤条件 --table help_keyword \ --target-dir /user/data01/mydata/res_where \ -m 1 #sql语句导入 sqoop import \ --connect jdbc:mysql://hdp01:3306/ \ --username root \ --password root \ --target-dir /user/data01/mydata/res_sql \ --query 'select * from mysql.help_keyword where help_keyword_id > 200 and $CONDITIONS' \ 指定查询语句 --split-by help_keyword_id \ 指定mapTask切分依据 --fields-terminated-by '\t' \ -m 23.MySQL导入到hive
#全量导入 sqoop import \ --connect jdbc:mysql://hdp01:3306/mysql \ --username root \ --password root \ --table help_keyword \ --fields-terminated-by "\t" \ --hive-import \ --hive-overwrite \ 覆盖导入 --create-hive-table \ --delete-target-dir \ 删除临时文件 --direct \ 使用MySQL自带的导出功能更快 --hive-database student \ 指定导入hive的数据库(必须存在) --hive-table new_help_keyword 指定表(不能存在,自动创建) #增量导入 sqoop import \ --connect jdbc:mysql://hdp01:3306/mysql \ --username root \ --password root \ --table help_keyword \ --target-dir /user/data01/mydata/res_add \ --incremental append \ 指定增量导入类型:append/lastmodified --check-column help_keyword_id \ 指定检验列 --last-value 200 \ -m 14.从MySQL导入到HBase
sqoop import \ --connect jdbc:mysql://hadoop02/bigdata \ 连接到MySQL --username root \ --password root \ --table student \ --hbase-table studenttest \ --column-family info \ --hbase-row-key id5.从hive导出到MySQL
sqoop export \ --connect jdbc:mysql://hdp02:3306/sqoopdb \ --username root \ --password root \ --table uv_info \ 指定导出到MySQL的表(必须存在,先创建) --export-dir /user/hadoop/warehouse/help_keyword \ 指定hive数据源在HDFS的路径 --input-fields-terminated-by '/u0001' 指定导出到MySQL的列检分隔符