第一个问题 :提示Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.conf.HiveConf
应该是环境问题 先是在sqoop的中 sqoop-env.sh加入
export HIVE_CONF_DIR=/opt/installs/hive/conf 没效果
又考虑是jar包的问题 把hive_lib下的 hive-common-3.1.2.jar拷贝到sqoop_lib 问题解决
第二个问题:
:java.lang.ClassNotFoundException:org.apache.commons.lang.StringEscapeUtils
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 13 more
解决方案: 将hive中的一个jar包(commons-lang-2.6.jar)导入到sqoop中
cp /opt/installs/hive/lib/commons-lang-2.6.jar /opt/installs/sqoop/lib/
第三个问题 java.sql.SQLException: Zero date value prohibited
这个错误通常出现在你尝试将一个无效的日期(例如 '0000-00-00'
)插入到数据库中
在 jdbcUrl 中设置对应的对策
driver-url=jdbc:mysql://localhost:3306/test?zeroDateTimeBehavior=CONVERT_TO_NULL