sqoop2的shell下的使用及其详解(sqoop-1.99.7)
前提是安装好sqoop!! 1.服务端如图,我们可以使用 sqoop2-server [ start | stop ] 来启动和关闭服务端。之后使用 jps 命令可以查看到 在启动服务成功后,会在自动生成两个文件(如果没有文件),(默认的是BASEDIR 和LOGDIR), 前者存放创建的link和job,后者存放日志文件, 如果采用默认的,当你换个路径启动服务,link和job会找不到,即使你回到原来的路径启动也找到了,所有建议采用绝对路径,配置文件路径:$SQOOP_HOME/conf/sqoop.properties 附上全局替换命令:(把@LOGDIR@ 换成 /user/hadoop/sqoop-1.99.7/logs) # 设置日志文件的目录 0,%s/@LOGDIR@//usr/hadoop/sqoop-1.99.7/logs/g # 设置数据的存放目录 0,%s/@BASEDIR@//usr/hadoop/sqoop-1.99.7/bin/BASEDIR/g
使用sqoop前请确保hadoop服务和Sqoop2服务器均已启动。其中Hadoop不仅要启动hdfs(NameNode、DataNode),还要启动yarn(NodeManager、ResourceManager),当然,一般还会有一个SecondaryNameNode,用于原始NameNode的备援进程。
2.客户端服务启动后,使用命名进入: sqoop2-shell 若成功会开启sqoop的shell命令行提示符:sqoop:000> 我们在使用的过程中可能会遇到错误,使用以下命令来使错误信息显示出来(每次进来都要设置才起作用)set option --n[ame] verbose --v[alue] true
连接Sqoop服务端: #我们的服务端安装在master这个节点上所以--host是master(每次进来都要设置才起作用)
使用命令查看刚刚设置的信息: showversion--a[ll]
可以使用help查看帮助文档,虽然不太详细,比较蠢,试一试命令就知道怎么用了 MySQL链接使用的是JDBC,这样想来不难理解,必须有对应的驱动文件jar,还得有对应的访问权限,请确保能在server端访问MySQL。 可以先看看connector模板都有哪些: showconnector 这时候会显示各个conector信息, 在1.99.7版本以前,每个connector会有一个id ,当创建link时,用这个id指定所继承的connector,但在这个版本中没有这个id了,创建link时直接使用connector名称创建,这里我们使用的是generic-jdbc-connector(一般数据库都可以用这个):
2.1创建mysql链接createlink-c[onnector] generic-jdbc-connector 这时候就会出现交互会话,提示你输入各项参数: show link,后面也可以加参数,-n或者-a之类的 2.2创建HDFS链接createlink-c hdfs-connector Name: hdfs-link 与mysql的一样,是个名字但不重复 HDFS URI:hdfs://master:9000/这个url是hadoop中配置hdfs-site.xml中的属性fs.defaultFS的值(老版的hadoop是fs.default.name,如果没找到就使用webUI (http://主机名(ip):8088/conf) 去配置中心看)。
回车后没有什么错误就会显示successful信息。
2.3 创建一个jobcreatejob-f"mysql-link"-t"hdfs-link" -f指定from,即是数据源位置,-t指定to,即是目的地位置。本例是从MySQL传递数据到HDFS,所以就是from mysql to HDFS。参数值就是在创建链接(link)时指定的Name。名字在上面取好了,知道为啥名字不能重复了吧
Name: mysql_hdfs_job #Name必须唯一 .......... Choose: 0 #必选 0 : NONE
2.4 运行job start job -n mysql_hdfs_job -s (名字上的引号要不要都无所谓) -s 参数可以看到运行的状态, 也可以用status job -n mysql_hdfs_job 查看或者使用webUI查看 (http://主机名(ip):8088/cluster/apps),也能看日志
如果失败,优先看sqoop shell中有没有报错,再者看日志,可以在webUI中和sqoop的日志文件看,前面有提及,如果日志中没有明显的报错,一般是你设置某个参数时不正确,或者是(hadoop)配置文件有问题, 报错时的推荐参数: 在Hadoop的yarn-site.xml 这个配置文件中设置以下属性
参考文章: http://www.cnblogs.com/avivaye/p/6196485.html http://www.cnblogs.com/avivaye/p/6197123.html http://blog.csdn.net/M_SIGNALs/article/details/53189424 http://blog.csdn.net/u012842205/article/details/52346595 http://blog.csdn.net/u014729236/article/details/46876651 还有很多地方不太懂,求知道的大牛,不吝赐教!共勉! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Renewed Red Hat and updated the system with yum up
- angularjs – 有可能改变github页面寻找index.html的位置吗
- shell脚本循环建立文件夹的bug
- Angular2路由器VS ui-router-ng2 VS ngrx路由器
- Angular开发者指南(二)概念概述
- scala – 获取连接到Apache Spark GraphX中节点的所有节点
- bootstrap-自定义列表组
- 关于cxf WebService中错误信息的解决 javax.xml.bind.Unmar
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 辅助类:表格
- AngularJS进阶 十八 在AngularJS应用中集成科大讯飞语音输入