Sql server 从SQL server到配置单元的sqoop导入将日期类型列减少2天
我在数据库中有一个表,Sql server 从SQL server到配置单元的sqoop导入将日期类型列减少2天,sql-server,date,import,hive,sqoop,Sql Server,Date,Import,Hive,Sqoop,我在数据库中有一个表,insertdate是“日期”类型。但是,当我使用配置单元表中的sqoop值将表导入配置单元时,配置单元表中的值将递减 范例 RDBMS-->插入日期='2013-04-01' 配置单元-->插入日期='2013-03-30' 我已使用以下命令导入数据: sqoop import --connect 'jdbc:sqlserver://localhost;username=XXXXX;password=XXXXXXX;database=XXXXXXXXXX'--table
insertdate
是“日期”类型。但是,当我使用配置单元表中的sqoop值将表导入配置单元时,配置单元表中的值将递减
范例
RDBMS-->插入日期='2013-04-01'
配置单元-->插入日期='2013-03-30'
我已使用以下命令导入数据:
sqoop import --connect 'jdbc:sqlserver://localhost;username=XXXXX;password=XXXXXXX;database=XXXXXXXXXX'--table tbl_name \
--warehouse-dir /user/hive/warehouse --m 1 \
--hive-import --hive-database db_name --hive-overwrite --null-string '\\N' --null-non-string '\\N' --hive-drop-import-delims
问题不在于Sqoop,而在于sqlserver的JDBC驱动程序 检查相关问题- 我认为您正在将
sqljdbc4.jar
放入/sqoop/lib
中
使用sqljdbc41.jar
或更新版本修复此问题
(
sqljdbc41.jar
是用Java 7编译的)它在添加sqljdbc41.jar后的工作。在mysql中使用参数:-D mapreduce.map.Java.opts=“-Duser.timezone=GMT”
sqoop导入-D mapreduce.map.java.opts=“-Duser.timezone=GMT”\
--连接jdbc:mysql://hostname/location \
--用户名-p\
--表VW\u位置\u Hadoop的历史\u\
--目标目录/apps/hive/warehouse/test.db/location\u h\
--配置单元表test.location\u层次结构\
--以“,”结尾的字段\
--蜂箱导入\
--删除目标目录\
--M1