我使用MYSQL配置hive作为存储库。当我使用我的标准用户(infa_hadoop)启动配置单元服务器时,它给出了一个错误“cant connect to metastore using the URI provided
”。
但是,如果我以root
身份登录并启动配置单元服务器,则启动良好。
使用的命令:
hive --service hiveserver
但是当我尝试执行ETL作业(informatica)时,它给了我访问控制异常!
Error :
Function [INFASQLExecute] failed in adapter [/u01/app/informatica/plugins/dynamic/hiveruntime/libhive.so] with error code [-1].
FnName: INFASQLExecute -- execute(). SQLException: Query returned non-zero code: 12, cause: FAILED: Hive Internal Error: java.lang.RuntimeException(org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="scratchdir":Infa_Linux:supergroup:rwxr-xr-x)
Function [INFASQLGetDiagRecW] failed in adapter [/u01/app/informatica/plugins/dynamic/hiveruntime/libhive.so] with error code [100].
FnName: INFASQLExecute -- execute(). SQLException: Query returned non-zero code: 12, cause: FAILED: Hive Internal Error: java.lang.RuntimeException(org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="scratchdir":Infa_Linux:supergroup:rwxr-xr-x)
Function [INFASQLGetDiagRecW] failed in adapter [/u01/app/informatica/plugins/dynamic/hiveruntime/libhive.so] with error code [100].].
但是hive在命令方面工作正常吗?任何建议..
答案 0 :(得分:0)
首先,请检查您的hive thrift服务器是否已启动并运行。
建议使用以下命令启动配置单元服务器
hive --service hiveserver -p 10001
Telnet并检查服务器是否在端口10001中运行,如果是,我认为您的问题将得到解决