遇到数据库脚本" AWKDBE018E无法访问所需的JDBC驱动程序文件夹"在Workload Scheduler中

时间:2015-08-25 04:25:30

标签: scheduler ibm-cloud workload

我创建了一个数据库脚本步骤,可以访问Workload Scheduler Service中的SQL数据库服务。当我运行该过程时,该步骤遇到以下错误。

错误消息

  

AWKDBE018E无法访问所需的JDBC驱动程序文件夹

消息信息
http://www-01.ibm.com/support/knowledgecenter/SSGSPN_9.2.0/com.ibm.tivoli.itws.doc_9.2/common/src_ms/awsmsawkdbe.htm?lang=en

  

AWKDBE018E无法访问所需的JDBC驱动程序文件夹

     

解释
  作业无法访问JDBC驱动程序文件夹,您可能没有   有足够的权限。   系统操作
  不执行该操作。
  操作员回复
  确认您有足够的权限。

此消息似乎要求我向作业用户授予适当的权限。但是没有属性可以指定Workload Automation Agent的作业用户。我使用Bluemix自动配置的Workload Automation Agent。

你能告诉我需要哪些参数吗?

数据库脚本步骤信息
enter image description here enter image description here

JDBC驱动程序类路径信息
我通过以下方式检查了路径" ls -lR"命令步骤的日志。

enter image description here enter image description here

3 个答案:

答案 0 :(得分:0)

看起来它在引用DB2的JDBC类路径的位置时遇到了问题。您能否请仔细检查DB2驱动程序的类路径的位置?

答案 1 :(得分:0)

它似乎与代理有问题,我试图复制相同的作业类型但它没有使用相同的错误消息(甚至使用不同的解决方案为jdbc驱动程序路径)。 如果您使用的是为您创建的Workload Automation Agent,则可以打开支持服务单以让Workload团队查看该代理。

在得到服务团队的支持后进行编辑:

在jar类路径字段中,对于预定义的工作负载调度程序进程,您只需要将路径放到包含jar文件的目录中,而不必使用jar文件名。

因此,根据当前的Workload Scheduler文档,您必须使用以下值: /家庭/ wauser / utils的

通过这种方式,数据库脚本可以正常工作。 (已添加截图)enter image description here

答案 2 :(得分:0)

即使很老,我也想做一些快速检查。 这是在9.5 FP1动态代理(容器交付的一部分)上进行测试的。路径值是容器的标准值。

尝试1-完整路径-成功

<jsdldatabase:driverPath>/opt/wa/TWS/jdbcdrivers/db2/</jsdldatabase:driverPath>
= Status Message:  Success
= Exit Status           : 0

尝试2-相对路径-失败

<jsdldatabase:driverPath>./jdbcdrivers/db2/</jsdldatabase:driverPath>
Job status : FAIL
===============================================================
AWKDBE018E Cannot access required JDBC Driver folder
===============================================================

Try3-路径中的变量-失败

<jsdldatabase:driverPath>${UNISONHOME}/jdbcdrivers/db2/</jsdldatabase:driverPath>
===============================================================
AWKDBE018E Cannot access required JDBC Driver folder
===============================================================

Try4-路径中的变量-失败

<jsdldatabase:driverPath>$UNISONHOME/jdbcdrivers/db2/</jsdldatabase:driverPath>
===============================================================
AWKDBE018E Cannot access required JDBC Driver folder
===============================================================

因此,简而言之,您需要一个指向该参数的绝对路径。 但是,您可以在代理程序全局的配置文件中设置路径

Try5-代理配置中的变量-

在IWSDATA主页中:wadata / JavaExt / cfg / DatabaseJobExecutor.properties,编写以下行

jdbcDriversPath=/opt/wa/TWS/jdbcdrivers

然后从作业中删除有关驱动程序的xml元素,所以没有一行

<jsdldatabase:driverPath>/opt/wa/TWS/jdbcdrivers/db2/</jsdldatabase:driverPath>
===============================================================
= Exit Status           : 0

请注意,在这种情况下,不需要jdbcdrivers / db2。它将搜索子目录。