Обнаружен сценарий базы данных "AWKDBE018E Не удается получить доступ к требуемой папке драйвера JDBC" в планировщике рабочей нагрузки

Я создаю шаг сценария базы данных, который обращается к SQL Database Service в Workload Scheduler Service. Когда я запустил процесс, шаг столкнулся с ошибкой ниже.

сообщение об ошибке

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, возможно, у вас недостаточно прав. Системное действие
Операция не выполнена.
Ответ оператора
Убедитесь, что у вас достаточно разрешений.

Это сообщение, кажется, просит меня предоставить надлежащие полномочия пользователю задания. Но нет свойства указать пользователя задания агента автоматизации загрузки. Я использую агент автоматизации рабочих нагрузок, предоставляемый Bluemix автоматически.

Не могли бы вы научить меня, какие параметры необходимы?

Информация о шаге сценария базы данных

Информация о пути к классу драйвера JDBC
Я проверил путь по журналу следующего шага команды "ls -lR".

2 ответа

Решение

Похоже, что с агентом возникла проблема. Я попытался воспроизвести тот же тип задания, но он не работает с тем же сообщением об ошибке (даже с использованием разных решений для пути к драйверу jdbc). Если вы используете агент Workload Automation, созданный для вас, вы можете открыть заявку в службу поддержки, чтобы рабочая группа Workload посмотрела на этого агента.


Изменить после получения поддержки от сервисной команды:

в поле classpath jar для предопределенного процесса планировщика рабочей нагрузки необходимо указать только путь к каталогу, содержащему файлы jar, без указания имени используемого файла jar.

Итак, согласно текущей документации Workload Scheduler, вы должны использовать следующее значение: /home/wauser/utils

Таким образом, скрипт базы данных работает нормально. (добавлен скриншот) введите описание изображения здесь

Похоже, что у него есть проблемы со ссылкой на расположение к пути класса JDBC для DB2. Не могли бы вы еще раз проверить расположение пути к классу для драйвера DB2?

Хотя я и стар, я хотел быстро проверить. Это проверено на динамическом агенте 9.5 FP1, входящем в состав контейнера. Значения пути - стандартные значения для контейнера.

Попробуйте 1 - полный путь - УСПЕХ

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

Попробуйте 2 - относительный путь - FAIL

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

Try3 - переменная в пути - FAIL

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

Try4 - переменная в пути - FAIL

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

Короче, вам нужен абсолютный путь к этому параметру. НО, вы можете установить путь в файле конфигурации глобально для агента

Try5 - переменная в конфигурации агента -

Внутри IWSDATA Home: 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 не требуется. Он будет искать подкаталоги.

Другие вопросы по тегам