Как выполнить скрипт bash / shell в Linux из Oracle DBMS_Scheduler?

В основном, я видел, что он использовался для кодирования двоичных данных в контекстах, которые могут обрабатывать только ascii или простые символы.

0
задан Kaushik Nayak 16 January 2019 в 05:45
поделиться

1 ответ

Используемое вами DBMS_SCHEDULER.CREATE_JOB содержит неверные аргументы. Желательно следовать этим стандартным шагам для запуска программы.

Сначала создайте программу с соответствующим именем и определите, что запускать. В приведенном ниже примере я запускаю команду bash напрямую. Вы можете поместить их в отдельный сценарий оболочки с соответствующими разрешениями и добавить его имя в program_action

BEGIN
DBMS_SCHEDULER.CREATE_PROGRAM (
 program_name=> 'COPY_PROGRAM',
 program_type=> 'EXECUTABLE',
 program_action  => '/bin/bash -c "echo hello world"',
 enabled=> TRUE,
 comments=> 'Push files to Amazon S3 Bucket.'
);
END;
/

. Затем создайте задание, используя эта программа.

BEGIN
DBMS_SCHEDULER.CREATE_JOB (
   job_name     => 'TEST_JOB',
   program_name => 'COPY_PROGRAM',
   start_date => NULL,
   repeat_interval => NULL,
   end_date => NULL,
   enabled => FALSE,
   auto_drop => FALSE,
   comments => '');
END;
/

См. эту ссылку для более подробной информации.

0
ответ дан Kaushik Nayak 16 January 2019 в 05:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: