Sqoop常用命令与参数
其他
2018-08-18 10:53:57
阅读次数: 0
Sqoop常用命令
命令 |
描述 |
import |
将数据导入到集群,HDFS,HIve,HBase |
export |
将集群的数据导出到传统数据库中 |
job |
用来生成一个sqoop任务的,生成后,该任务不执行,等待使用命令执行 |
list-databases |
显示所有数据库名字 |
list-tables |
显示某个数据库下所有表的名字 |
codegen |
获取数据库某张表数据生java 并且打包成jar |
import-all-tables |
将某一个数据库下的所有的表导入到集群 |
merge |
将HDFS下不同目录下的数据合并在一起,然后存放到指定目录 |
metastore |
记录sqoop job的元数据信息,如果不启动metastore实例,可以在sqoop-site.xml中配置相关路径 |
create-hive-table |
创建Hive表 |
eval |
查看SQL的运行结果 |
import-mainframe |
从其他服务器上导入数据到HDFS |
参数详解
公用参数:数据库连接
命令 |
描述 |
–connect |
连接数据库的URL |
–connection-manager |
使用管理类 |
–driver |
手动指定要使用的JDBC驱动程序类 |
–hadoop-mapred-home |
覆盖$ HADOOP_MAPRED_HOME |
–help |
打印使用说明 |
–password-file |
设置包含验证密码的文件的路径 |
-P |
从控制台读取密码 |
–password |
设置验证密码 |
–username |
设置认证用户名 |
–verbose |
工作时打印更多信息 |
公用参数:import
命令 |
描述 |
–fields-terminated-by |
设定每个字段以什么样的符号结果,默认为逗号 |
–lines-terminated-by |
每一行以什么样的字符结束,默认为\n |
–append |
将数据附加到HDFS中的现有数据集 |
–as-textfile |
以纯文本格式导入数据(默认) |
–columns |
要从表导入的列 |
–delete-target-dir |
删除导入目标目录(如果存在) |
–table |
要阅读的表格 |
–target-dir |
HDFS目的地目录 |
–where |
导入期间要使用的WHERE子句 |
-z,–compress |
启用压缩 |
–compression-codec |
使用Hadoop编解码器(默认gzip) |
-m,–num-mappers |
使用n个 map任务并行导入 |
-e,–query |
导入结果statement。 |
–optionally-enclosed-by |
给有双引号或者单引号的字段前后加上指定的字符 |
–enclosed-by |
给字段的值前后加上指定的字符 |
–escaped-by |
对字段中的双引号加转义符 |
公用参数:export
命令 |
描述 |
–input-fields-terminated-by |
导出数据中字段分隔符 |
–input-lines-terminated-by |
导出数据中行分隔符 |
公用参数:hive
命令 |
描述 |
–hive-import |
将数据从传统数据库中导入到Hive表中 |
–hive-overwrite |
覆盖已存在的数据 |
–create-hive-table |
more是false,如果表已经存在,则会创建失败 |
–hive-table |
hive中表的名字 |
–hive-partition-key |
创建分区,后面直接跟的就是分区名,类型默认为string |
–hive-partition-value |
导入数据的时候,指定一下是哪个分区 |
转载自blog.csdn.net/qq_41610418/article/details/81713319