sqoop = sql + hadoop

1,系统方面的准备

scp ./ojdbc6.jar root@server-1:/usr/hdp/2.6.0.3-8/sqoop/lib/
scp ./ojdbc6.jar root@server-2:/usr/hdp/2.6.0.3-8/sqoop/lib/

cd /usr/hdp/2.6.0.3-8/sqoop/lib/
chmod 755 ojdbc6.jar

学习了:https://www.cnblogs.com/jxhd1/p/6528574.html
su root
# usermod -a -G hadoop user001 '把user001用户添加到hadoop组中
# usermod -a -G hdfs user001 '把user001用户添加到hdfs组中

2,sqoop导入到hdfs中
学习了:http://blog.csdn.net/yu616568/article/details/45030739

'可行,识别--connection-manager,主要是-m 2进行并行导入
sqoop import --connect jdbc:Oracle:thin:@127.0.0.1:1521:ora --connection-manager org.apache.sqoop.manager.OracleManager --username admin --password admin -m 2 --split-by id --query 'SELECT t.* FROM tbl01 t where $CONDITIONS' --target-dir '/user/user001/tbl01'

'方法2 ,用--driver指定了类,-m 1 进行导入了
sqoop import --connect jdbc:Oracle:thin:@127.0.0.1:1521:ora --username admin --password admin -m 1 --driver oracle.jdbc.driver.OracleDriver --query 'SELECT * FROM tbl02 t where 1=1 and $CONDITIONS' --target-dir '/user/user001/tbl02'

‘方法3 , 查看源码之后org.apache.sqoop.manager.OracleManager.OracleManager(SqoopOptions),

'里面:    } else if (scheme.startsWith("jdbc:oracle:")) {, 注意自己的连接串写的不规范

sqoop import --connect jdbc:oracle:thin:@127.0.0.1:1521:ddxt11 --username admin --password admin   -m 2 --split-by id --query 'SELECT t.* FROM tbl01  t where $CONDITIONS' --target-dir '/user/user001/tbl01'

‘方法4, 表名(TBL01)、列名(--split-by ID)都要大写,不大写就报错给你看;

'主要是生成的sql语句:SELECT t.* FROM "TBL01" t WHERE 1=0,SELECT MIN("NAME1"), MAX("NAME1") FROM "TBL01"

sqoop import --connect jdbc:oracle:thin:@127:1521:ddxt11 --username admin  --password admin -m 2 --split-by ID --table TBL01 --target-dir '/user/user001/tbl01'

3,数据库表从hdfs中导入到hive中

user001用户登录:

>hive

>show databases;

>create database admin;

>use admin;

>create table tbl01
(
id bigint comment '父id',
pid bigint comment '父id',
name1 VARCHAR(16) comment 'a',
name2 VARCHAR(64) comment 'b',
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
stored as textfile;

在hive中执行:
load data inpath '/user/user001/tbl01/part-m-00000' into table admin.tbl01;

在user001用户中执行:

必须先把表tbl01创建出来;
hive -e "load data inpath '/user/user001/tbl01/part-m-00000' into table admin.tbl01;"
或者
hive -f '/websoftware/tbl01_imp.sql'

不会报错了;需要把user001添加到hdfs组下面;
因为hadoop fs -ls /apps/hive/warehouse 输出:
drwxrwxrwx - user001 hdfs 0 2017-11-09 10:00 /apps/hive/warehouse/admin.db
drwxrwxrwx - user001 hdfs 0 2017-11-02 15:14 /apps/hive/warehouse/hive_test.db
hive存储文件的地方,需要使用hdfs组权限;

user001用户下面:直接从hdfs下面move到hive下面;
方法2,方法1是在hive下面使用load data 方法;
hadoop fs -mv /user/user001/d_zmzd/part-m-00000 /apps/hive/warehouse/admin.db/tbl02

hadoop-16-sqoop导入oracle数据相关推荐

  1. oracle导入初始数据死机,Sqoop导入Oracle数据至hive卡死在hive.HiveImport: Connecting to jdbc:hive2不执行...

    环境信息: HDP-3.1.4 已经下载好odjbc8.jar驱动程序放置在/usr/hdp/current/sqoop-client/lib/目录 Sqoop读取Oracle数据库数据导入Hive时 ...

  2. sqoop将oracle数据导入到hive报错:Error: java.io.IOException: SQLException in nextKeyValue

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 问题 一.问题是什么导致的? 二.验证问题 总结 问题 sqoop将oracle数据导入到hive报错:Error: jav ...

  3. oracle数据导入到python,Python导入oracle数据的方法 -电脑资料

    作者:Sephiroth 字体:[增加 减小] 类型:转载 这篇文章主要介绍了Python导入oracle数据的方法,涉及Python读取csv文件信息再插入到Oracle数据库的相关技巧,具有一定参 ...

  4. oracle导入表无反应,EZDML无法导入oracle数据表的解决方法

    EZDML无法导入oracle数据表的解决方法 EZDML无法导入oracle数据表的解决方法 1.配置好oracle连接,进行导入数据表时报错:sql*net not properly instal ...

  5. oracle数据导入到python,Python导入oracle数据的方法

    Python导入oracle数据的方法 本文实例讲述了Python导入oracle数据的方法.分享给大家供大家参考.具体如下: import cx_Oracle dns_tns=cx_Oracle.m ...

  6. ubuntu下oracle数据的导入,导入oracle数据库命令行

    Windows DOS窗体下Oracle 数据库的导入导出命令 oracle 用户创建 数据库的导入导出imp/exp 可以在SQLPLUS.EXE或者DOS(命令行)中执行 执行环境:可以在SQLP ...

  7. 【华为云技术分享】使用sqoop导入mysql数据到hive中

    Sqoop 是一个数据转储工具,它能够将 hadoop HDFS 中的数据转储到关系型数据库中,也能将关系型数据库中的数据转储到 HDFS 中. Apache Sqoop,是"SQL to ...

  8. sqoop迁移oracle数据到TDH

    从oracle导出数据为文本格式 代码 https://github.com/reader-sword/oracle-transform-TDH 驱动包位置: oracle-drives.rar ht ...

  9. QlikSense导入oracle数据,【主流BI分析工具对比】12款顶级BI分析工具最佳用例

    如今的市面上充盈着商务智能(BI)工具,可以解决所有类型业务与行业日益增长的分析需求.然而,哪款(或哪些)分析工具值得购买呢? 在本文中,通过检验来自12家顶级厂商的BI分析工具:Birst.IBM. ...

最新文章

  1. 《c陷阱与缺陷》之贪心法
  2. Ecology Letters:重金属的污染可导致铁载体生产菌的增加
  3. 深度洞见|起底元宇宙风潮,如何重塑未来数字营销?
  4. [渝粤教育] 中国地质大学 高层建筑施工 复习题
  5. java url 授权,Spring MVC框架 - 基本认证之URL 授权认证
  6. FFmpeg在Windows系统下的编译过程
  7. 【算法大赛直播周】如何赋予机器更多“想象力”?《计算广告》作者刘鹏带你解密深度学习
  8. Java中HashMap的原理
  9. 复旦计算机学院软件工程,2019年复旦961软件工程专硕考研初试363+复试经验分享...
  10. matlab linux命令行窗口,linux命令行运行matlab
  11. python有道云笔记_GitHub - IthacaDream/youdaonote-pull: 一个一键导出 / 备份「有道云笔记」所有笔记的 Python 脚本...
  12. java银行排队系统_java--面向对象(一个简单的银行排队系统)原理版
  13. 用Unity做游戏,你需要深入了解一下IL2CPP
  14. 硬盘参数调整命令hdparm
  15. (翻译)文本字段的最优显示方式
  16. 基于核概念的KCCA算法
  17. matlab 动画生成avi,MATLAB 生成.avi和.gif
  18. 复无法自动修复此计算机,win10自动修复而且无法重置
  19. vue3中scrollTop不生效的问题
  20. 【spring_Cloud】java.lang.IllegalStateException: Failed to introspect Class [org.springframework.cloud

热门文章

  1. python3下载文件-在Python 3中从web下载文件?
  2. python字符串写入excel-python 操作 Excel 之写入
  3. 免费学python的软件-初学python编程,有哪些不错的软件值得一用?
  4. 图像的评价指标之SSMI——结构相似性
  5. roaringbitmap java,BitMap、RoaringBitmap与JavaEWAH
  6. java set集合转数组_Java数组【array】与集合【list】的相互转换
  7. C++读写EXCEL文件方式比较 .
  8. concurrenthashmap在1.8和1.7里面有什么区别
  9. C# winfrom 导出 Excel
  10. msql查询指定日期