从远程hadoop/unix服务器通过socks代理连接aws上的redshift

umuewwlo  于 2021-06-03  发布在  Sqoop
关注(0)|答案(0)|浏览(252)

我需要建立一个从hadooplinux环境到redshift数据库的jdbc连接。我试过在shell中设置env变量,并通过设置下面的环境变量来启动sqoop,但没有成功。

$export socks_proxy=hostName
$export http_proxy=hostName
$export http_proxyPort=1080 
$export https_proxy=hostName
$export https_proxyPortName=1080
$export socksProxyHost=hostName

尝试从spark shell设置并从shell运行jdbc连接,但都不起作用这里是我的spark shell和jdbc连接字符串spark shell--conf“spark.driver.extrajavaoptions=-dsocks.proxyhost=hostname--jars redshiftjdbc42-1.2.7.1003.jar,spark-redshift_2.10-1.0.jar,spark-redshift_2.10-2.0.jar

val df = sqlContext.load("jdbc", Map("url" -> 
"jdbc:redshift://RedShiftHostName:Port/databaseName?ssl=true&sslfactory=com.amazon.redshift.ssl.NonValidatingFactory&user=UNAME&password=PASSWORD", "dbtable" -> "(select * from information_schema.tables) tmp", "driver" -> "com.amazon.redshift.jdbc.Driver"));`

这是我从sqoop和spark得到的常见错误

不确定我是不是从spark/sqoop做错了什么?我能知道是否有其他方法可以从shell脚本运行jdbc而不利用hadoop echo系统吗?可能是用一些java代码通过shell?
提前谢谢,谢谢你的回答和例子。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题