如何使用自定义jdbc驱动程序运行sqoop?

uinbv5nw  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(431)

如果为oraclethin提供(--connect/--user/--password),则可以运行sqoop而不提供--driver参数。
但是我需要让它用我的项目中使用的自定义jdbc驱动程序(它正确地实现了java.sql.driver接口)来运行,而不是用oracle.jdbc.oracledriver。
我无法通过简单的证明来让它工作 --driver 参数。这个建议一点用都没有。
如何将sqoop与自定义db访问驱动程序一起使用?如何克服我所犯的错误?
如果它与连接管理器有关,有人能告诉我应该指定什么连接管理器吗?
谢谢您!
下面是我真正想做的:

./sqoop.sh import \
    --fs $HDFS --jt $JT \
    --connect <cutom-connection-string> --username username --password password \
    --table SYS.ALL_TABLES --split-by TABLE_NAME --target-dir /temp/try/110 --verbose \
    --driver xx.xx.xx.MyDriver

我得到一个错误:
error manager.sqlmanager:执行语句时出错:java.sql.sqlexception:ora-00933:sql命令未正确结束
更多错误信息:

DEBUG tool.BaseSqoopTool: Enabled debug logging.
WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.
DEBUG sqoop.ConnFactory: Loaded manager factory: com.cloudera.sqoop.manager.DefaultManagerFactory
WARN sqoop.ConnFactory: Parameter --driver is set to an explicit driver however appropriate connection manager is not being set (via --connection-manager). Sqoop is going to fall back to org.apache.sqoop.manager.GenericJdbcManager. Please specify explicitly which connection manager should be used next time.
INFO manager.SqlManager: Using default fetchSize of 1000
INFO tool.CodeGenTool: Beginning code generation
INFO xx.xx.xx.MyDriver: xx.xx.xx.MyDriver registered successfully.
DEBUG manager.SqlManager: No connection paramenters specified. Using regular API for making connection.
INFO xx.xx.xx.MyDriver: Returning database connection
DEBUG manager.SqlManager: Using fetchSize for next query: 1000
INFO manager.SqlManager: Executing SQL statement: SELECT t.* FROM SYS.ALL_TABLES AS t WHERE 1=0
ERROR manager.SqlManager: Error executing statement: java.sql.SQLException: ORA-00933: SQL command not properly ended

java.sql.SQLException: ORA-00933: SQL command not properly ended
jutyujz0

jutyujz01#

您的自定义jdbc驱动程序使用正确。问题似乎出在正在使用的通用jdbc连接器中,它似乎产生了无效的查询。您可能还需要通过将驱动程序替换为自定义驱动程序来分叉内置oracle连接器。
贾尔切克

相关问题