求助sqoop从hive导出数据到oracle,目标表字段有date类型sqoop失败 40C

sqoop语句为
sqoop export \
--connect jdbc:oracle:thin:@(description=(address=(protocol=tcp)(port=1521)(host=172.18.50.5))(connect_data=(service_name=rac))) \
--username dsp \
--password rac \
--table DSP.S_F_TKFTIS_ORDER_HIS \
--export-dir /user/hive2/warehouse/dml.db/dml_s_f_tkftis_order_his \
--columns L_SERIALNO,C_FLAG,C_ACCOTYPE,C_ACCO,C_TYPE,L_SERVICEID,C_MODE,D_DATE,C_ISACCO,C_FROM,C_USERCODE,D_SERVICEEND,D_SERVICESTART \
--input-fields-terminated-by '\001' \
--input-null-string '\N' \
--input-null-non-string '\N'

目标表结构
create table S_F_TKFTIS_ORDER_HIS
(
l_serialno VARCHAR2(40),
c_flag CHAR(1),
c_accotype CHAR(1),
c_acco VARCHAR2(40),
c_type CHAR(1),
l_serviceid VARCHAR2(40),
c_mode CHAR(1),
d_date VARCHAR2(40),
c_isacco CHAR(1),
c_from CHAR(1),
c_usercode VARCHAR2(16),
d_serviceend VARCHAR2(40),
d_servicestart VARCHAR2(40)
)
tablespace DSP_DATA
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
如果我把oracle目标表字段都改为varchar则可以正常导入,如果字段类型有date则不成功,求大神帮忙看看什么原因。

0

1个回答

oracle的date保持不变 我是拿ETL将hive里边的数据load的Oracle 在ETL中设置日期格式 yyyy/MM/dd HHmmss或者其他

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
利用sqoop导出hive数据到 oracle
sqoop export
Sqoop 从hdfs中把数据导出到oracle
Sqoop 从hdfs中把数据导出到oracle
sqoop导入数据时间日期类型错误
一个问题困扰了很久,用sqoop import从mysql数据库导入到HDFS中的时候一直报错,最后才发现是一个时间日期类型的非法值导致。hive只支持timestamp类型,而mysql中的日期类型是datetime, 当datetime的值为0000-00-00 00:00:00的时候,sqoop import无法将其转换成hive, 然后报错。解决方法是在hive中使用string字段类型。
运用sqoop将数据从oracle导入到hive中的注意的问题
问题一:导入的列有换行符等其他字符如何解决 有一张新闻表,其中有一个字段类型为clob,为新闻的内容,里面有各种字符,其中就包括hive中默认的分隔符和自定义的分隔符。这样当导数据到hive中就会造成数据混乱。 网上参考了两个地址: http://www.th7.cn/Program/java/201608/920584.shtml http://stackoverflow.com
利用sqoop 将 hive/hdfs数据 导入 Oracle中
首先我们要安装好sqoop 笔者我用的是sqoop1 其次我们需要ojdbc6.jar 这个jar 包下载地址如下: http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html 将解压的包 复制到sqoop安装目录下的lib 目录中 最后执行我们的导入命令即可
从Hive导出数据到Oracle数据库--Sqoop
始发与个人博客:https://kongdada.github.io/ 实习老大让我把Hive中的数据导入Oracle数据库。摸索成功后记录如下: 首先解释一下各行代码: sqoop export # 指定要导入到Oracle的那张表(通常与hive中的表同名) --table TABLE_NAME # host_ip:导入oracle库所在的ip:导入的数据库 --connec...
sqoop从hive中导出oracle数据
sqoop export --connect jdbc:oracle:thin:@192.168.0.113:1521:cyanalyse --username analyse_ods --password analyse_ods --table sms_count --columns userid,sms_count --export-dir /user/hive/hivedata/user_c
Sqoop 日期字段导出报错
想用sqoop 把导入到hive的基础表导出到另一个数据库。 Sqoop 导出数据时报如下错误: java.lang.RuntimeException: Can't parse input data: '2018-07-18' at .... .... org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java...
sqoop从oracle导入数据导hive表不支持的数据类型
sqoop从oracle导入数据导hive表不支持的数据类型: sqoop语句实例: sqoop  import-all-tables --connect jdbc:oracle:thin:@ip:1521:orcl  --username TJAMIS_LXF --password ******--hive-database TJAMIS_LXF  -m 1 --create-hive-
sqoop 导入数据特殊字符问题
sqoop 导入之后 发现比源数据多 检查之后发现是有的字段带有换行符 查询官方文档后发现  需要添加 --hive-delims-replacement 和 --hive-drop-import-delims 之后正常
解决从mysql端使用sqoop导入hive端字段类型不匹配问题
在sqoop query“ select  * from  tablename  ”中对字段用mysql函数进行转换
Hdfs 导入Hive,时间相关的字段 导入后为NULL
CREATE TABLE OFFER_${day_id} ( OFFER_ID BIGINT, ATOM_ACTION_ID BIGINT, PARTY_ID BIGINT, OFFER_SPEC_ID BIGINT, OFFER_NBR STRING, AREA_ID INT, MKT_ACTIVITY_ID BIGINT, START_DT STRING, END_
利用Sqoop把Oracle数据迁移到HDFS、Hive
提示:以下操作是在Xshell终端进行的,导入数据后若在Xshell终端上查看导入的数据,数据中的中文会出现乱码。要在Linux系统(最好是在可视化的Linux系统端)中去查看数据不会出现乱码。本人刚开始一直都是在Xshell上进行数据的导入、查看测试,花了一天时间解决“乱码”情况都没解决,最后才知是Xshell终端的问题,这里提示一下。一、利用Sqoop,从Oracle到HDFS第一步:把Ora
sqoop操作之HIVE导出到ORACLE
示例数据准备hive中创建dept表create table dept(     deptno int,     dname string,     loc string ) row format delimited fields terminated by '\t' lines terminated by '\n' stored as textfile;导入数据:sqoop import --...
sqoop导出hive表数据到mysql
直接在mysql里从本地文件系统导入数据 mysql》LOAD DATA LOCAL INFILE 'C:\\Users\\asys\\Documents\\Tencent Files\\13174605\\FileRecv\\2015082818' INTO TABLE track_log  FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\r'
Sqoop oracle导到hive 由于存在空字符导致字段错位和丢失错误
感谢分享:http://blog.csdn.net/chaiyiping/article/details/40622507 Sqoop从oracle导入数据到hive,示例: [plain] view plain copy sqoop import --connect jdbc:oracle:thin:@oracle-host:port
sqoop系列-MySQL导入HIVE时间格问题
问题描述 今天早上在做 sqoop MySQL 导入hive数据测试时发现 MySQL 中datetime和timestamp类型的数据导入hive时,选择不同的文件存储格式,会导致导入hive 后字段类型不一致。针对 MySQL 时间类型:datetime,date,time,timestamp 做了如下测试, 备注:涉及敏感信息的的变量,使用${xxxx} 代替 MySQL 数据信息...
oracle数据库中Date类型倒入到hive中出现时分秒截断问题解决方案
1.问题描述:     用sqoop将oracle数据表倒入到hive中,oracle中Date型数据会出现时分秒截断问题,只保留了‘yyyy-MM-dd',而不是’yyyy-MM-dd HH24:mi:ss'格式的,后面的‘HH24:mi:ss’被自动截断了,在对时间要求到秒级的分析处理中这种截断会产生问题。 2.解决方案:     在用sqoop倒入数据表是,添加--map-
通过Sqoop工具将Oracle数据库中的表数据导入到Hive的过程
Sqoop是一款开源的工具主要用于在Hadoop(Hive,HBasw)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。 将各种关系型数据导入Hive中,其实大同小异,这里就以Oracle数据为例
使用sqoop导入导出mysql、hdfs、hive出现的问题
问题1:java.lang.ClassNotFoundException: Class widgets not found执行的命令:sqoop import --connect jdbc:mysql://localhost:3306/hadoopguide --username root --password root --table widgets //其中,hadoopguide是数据库名称
利用sqoop完成数据导入导出
使用SQOOP分别实现关系型数据库入mysql与hive、hbase之间的数据交流。
sqoop数据抽取 分区表的示例
--分区表 #!/bin/bash #mysql表名  tableName=t_sys_file #字段名  columns=id,biz_field_name,biz_id,biz_table_name,bucket_name,content_type,created_date,disp_order_no,download_times,file_key,file_siz
sqoop导出hive表到mysql中
sqoop导出hive表到mysql中
sqoop 导出 hive分区表 数据到 mysql
./sqoop export --connect jdbc:mysql://localhost:3306/test --username root --password 123456 --table pptr --export-dir /user/hive/warehouse/moji.db/ttpr/part_date=2015-06-16/part_type=1 --input-fields-
sqoop 从oracle到hive数据错位,并产生很多null值,clob类型被截取成一小段一小段
1、在执行Sqoop从oracle和mysql导数到hive中时,出现hive数据错位,并产生很多null值: 原因是源数据中包含许多'\n'、'\r'、'\01'等字符,表在分割字段和行过程中出现错位; 解决方式:在Sqoop执行中增加属性–hive-drop-import-delims,在导入数据到hive中时,去掉数据中\n,\r和\01这样的字符; --hive-drop-imp
[Sqoop]将Hive数据表导出到Mysql
利用sqoop将Hive数据表导出到Mysql
hive学习笔记之-使用Sqoop把Oracle表导入Hive
安装环境: Hive: hive-0.11.0 Hadoop: Hadoop 1.2.1 Sqoop: sqoop-1.4.4.bin__hadoop-1.0.0 Oralce driver: ojdbc6.jar 软件下载: Hive: http://apache.dataguru.cn/hive/ Hadoop: http://apache.dataguru.cn/had
Sqoop从Oracle导入表到Hive
最近甲方项目希望建立大数据平台,需要将保存在Oracle中的表和记录全部导入到大数据平台中。原计划是将表导入到HBase中,作为Hive外部表,但甲方对如何使用还没有明确想法,HBase行键不好设计,但甲方又急于将数据导入试用。于是决定先将数据导入到Hive中,方便他们做统计分析试验。调研一番后,决定采用Sqoop。现将使用过程总结如下。
linux中sqoop实现hive数据导入到mysql
上一篇文章我们简单的介绍《http://blog.csdn.net/a123demi/article/details/72742553》,本文将简单介绍如何通过sqoop把hive数据导入到mysql。 一. 前期准备 实践本文内容,默认您已经安装和部署了hadoop,mysql,hive,sqoop等环境。如相关安装和部署有问题,可以参考《http://blog.csdn.net/a123demi/article/details/72742553》。 二. sqoop实现hdfs文件导出 2.1 hi
Sqoop抽取文本数据到hive由于存在空字符导致字段错位和丢失错误
用sqoop抽取数据的时候,若记录中含有“由空格组成的字符串”,由于空字符串是由引号括起来,因此,需要对引号进行转义。否则sqoop 完成后, hive加载hdfs文件时,会自动对其截断,从而导致字段数增多。
工作中,sqoop导入导出hive,mysql 出现的问题.
1.从mysql导入到Hive 出现数据带入错误:当字段中存在输入tab键,会被hive识别多创建一条字段。 解决:sqoop import 语句中 添加  --hive-drop-import-delims 来把导入数据中包含的hive默认的分隔符去掉。 2.出现PRIMARY主键错误:com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstra
[总结]----sqoop 同 MySQL 和 HDFS,Hive 导入导出
1)从mysql导入到HDFS 全量导入例如: bin/sqoop import \ (输入命令) --connect jdbc:mysql://bigdata.ibeifeng.com:3306/testdb \ (指定连接jdbc端口和数据库名称) --username root \ (数据库用户名) --password root123 \ (密码 若不适用明文指定数据库密
Sqoop导入hive数据库NULL值处理
最近用sqoop将mysql的一张表导入到hive中,发现以前is null的字段导入到hive的时候,被转换为了字符串’NULL’或’null’。 当导入的时候加上–direct选项的时候,null值导入变成了字符串’NULL’,命令如下:sqoop import \ --connect "jdbc:mysql://${hostname}:3306/${db_name}?useUnic
sqoop与hbase导入导出数据
环境:sqoop1.4.6+hadoop2.6+hbase1.1+mysql5.7 说明: 1.文中的导入导出的表结构借鉴了网上的某篇博客 2.mysql导入hbase可以直接通过sqoop进行 3.hbase导出到mysql无法直接进行,需要经过hive的中间作用来完成 hbase→hive外部表→hive内部表→sqoop导出→mysql一、Sqoop导入hbasea) Mysql创建
使用Sqoop将数据从Hive导入MySQL可能遇到的问题
权限问题,字段格式问题,日期格式问题等。
sqoop导入导出数据(cdh版)
前置条件 已经成功安装配置Hadoop和Mysql数据库服务器,如果将数据导入或从Hbase导出,还应该已经成功安装配置Hbase。 下载sqoop和Mysql的JDBC驱动 sqoop-1.2.0-CDH3B4.tar.gz :http://archive.cloudera.com/cdh/3/sqoop-1.2.0-CDH3B4.tar.gz mysql-connector-java-
使用Sqoop将Hive表数据导入到mysql
通过Sqoop将Hive表数据导入到Mysql通常有两种情况。 第一种是将hive上某张表的全部数据导入到mysql对应的表中。 第二种是将hive上某张表中的部分数据导入到mysql对应的表中。 两种方式的区别在于第二种情况需要指定要导入数据的列名称。两种情况的导入方式分别如下: 1.全部导入 Sqoop export --connect  jdbc:mysql://127.0.0.1
sqoop从sqlserver导入数据操作指令及hive创建表过程
sqoop从sqlserver导入数据操作指令及hive创建表过程#sqoop从sqlserver导入数据到HDFS上,指定存储目录。设置m(mr)数量bin/sqoop import \--connect 'jdbc:sqlserver://xx.xx.xx.xxx:1433;database=库名' \--username 'root' \--password 'root' \--table ...
sqoop2 去除单引号与自定义分隔符
1、缘由(需求)       正在做oracle到hive的数据导入,遇到数据分隔问题,sqoop2 默认分隔式逗号,我使用hive 也是逗号分隔,发现数据中含有逗号的字段,hive把它分成了好几个。于是去网上找自定义分隔的解决方法,但是无奈这方面的资料很少。不解决此问题,工作无法进行。胜了最后一个法宝,编译源码。 2、去下载跟你使用的一个版本的sqoop2 源码(最好),使用maven构建,
sqoop 根据时间增量导入
sqoop 根据时间增量导入