sqoop 从oracle抽取遇到连接错误

今天同事在用sqoop同步数据oracle数据到hive中遇到连接错误:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
截图如下:
sqoop 从oracle抽取遇到连接错误_第1张图片

linux命令行是可以sqlplus连接 但sqoop却不能连接 。刚开始颇为奇怪。
从错误日志已经说明问题是SID不对。
数据库方面的同事提供了连接也没有说明到底是SID还是service_name.
同事提供的是zncs_yf
sqoop 从oracle抽取遇到连接错误_第2张图片
网上搜索了一下,去远程oracle服务器查看了一下
echo $ORACLE_SID 

好这里就解决了 修改下连接里的
原因
jdbc连接数据库的时候,需要使用数据库的sid_name,而不是数据库的services_name.而使用plsql连接数据库的时候,只需要数据库的services_name即可,所以修改连接字符串中的services_name 为sid_name.

你可能感兴趣的:(sqoop 从oracle抽取遇到连接错误)