Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 dbms_scheduler JOBS  [new]
Alexvmk
Member

Откуда:
Сообщений: 237
Пытаюсь запустить команду ОС средствами pl sql oracle.
Запускаю через командную строку Windows (cmd) программу, проигрывающую mp3 по параметру:
C:\Downloads\mpg123.exe Living_Dead_Girl.mp3
Все хорошо, звук идет.

Теперь хочу то же самое сделать через oracle.
Создаю job:
begin
DBMS_SCHEDULER.CREATE_JOB
( job_name => 'NEW_JOB'
, job_type => 'EXECUTABLE'
, job_action => 'cmd.exe C:\Downloads\mpg123.exe Living_Dead_Girl.mp3'
, repeat_interval => 'sysdate + 100'
, enabled => TRUE
);
end;

Выполняю

EXECUTE dbms_scheduler.run_job('NEW_JOB,   true)

пишет ошибку:
ORA-27370: job slave failed to launch a job of type EXECUTABLE
ORA-27300: OS system dependent operation:accessing execution agent failed with status: 2

Кто сталкивался, помогите?
1 авг 08, 09:29    [6013733]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
spider13
Member

Откуда: https://spider13.net/
Сообщений: 965
я так понял ему не нравиться приложение.
попробуй указать Explorer (имя мп3 файла)
1 авг 08, 09:37    [6013802]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
Alexvmk
Member

Откуда:
Сообщений: 237
spider13
я так понял ему не нравиться приложение.
попробуй указать Explorer (имя мп3 файла)

Сорри, не понял
1 авг 08, 09:46    [6013856]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
spider13
Member

Откуда: https://spider13.net/
Сообщений: 965
begin
DBMS_SCHEDULER.CREATE_JOB
( job_name => 'NEW_JOB'
, job_type => 'EXECUTABLE'
, job_action => 'explorer.exe C:\Downloads\mpg123.exe Living_Dead_Girl.mp3'
, repeat_interval => 'sysdate + 100'
, enabled => TRUE
);
end;
1 авг 08, 09:51    [6013890]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
Alexvmk
Member

Откуда:
Сообщений: 237
spider13
begin
DBMS_SCHEDULER.CREATE_JOB
( job_name => 'NEW_JOB'
, job_type => 'EXECUTABLE'
, job_action => 'explorer.exe C:\Downloads\mpg123.exe Living_Dead_Girl.mp3'
, repeat_interval => 'sysdate + 100'
, enabled => TRUE
);
end;


Не помогло!
1 авг 08, 09:54    [6013913]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
spider13
Member

Откуда: https://spider13.net/
Сообщений: 965
ORA-27370
If this error occurs on Windows in connection with dbms_scheduler, the cause is, most probably, that the OracleJobScheduler%ORACLE_SID% service is not started. Starting it should eliminate this error.
1 авг 08, 10:09    [6014016]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
Alexvmk
Member

Откуда:
Сообщений: 237
Да, ясно... теперь ошибку не пишет, но звук не проигрывает(((
Что может быть?
1 авг 08, 10:17    [6014069]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
spider13
Member

Откуда: https://spider13.net/
Сообщений: 965
а приложение запскает?
1 авг 08, 10:19    [6014090]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
Alexvmk
Member

Откуда:
Сообщений: 237
Все! все проблемы решили!
BEGIN

DBMS_SCHEDULER.CREATE_JOB(

job_name            => 'test1',

job_type            => 'EXECUTABLE',

job_action            => 'C:\Downloads\mpg123-1.4.3-x86\mpg123-1.4.3-x86\mpg123',

number_of_arguments => 1

);

DBMS_SCHEDULER.SET_JOB_ARGUMENT_VALUE (

job_name          => 'test1',

argument_position => 1,

argument_value    => 'C:\Downloads\mpg123-1.4.3-x86\mpg123-1.4.3-x86\Living_Dead_Girl.mp3'

);
DBMS_SCHEDULER.ENABLE('test1');

END;

begin
DBMS_SCHEDULER.STOP_JOB('test1');
end;
1 авг 08, 10:46    [6014315]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: dbms_scheduler JOBS  [new]
pixela
Member

Откуда: Санкт-Петербург
Сообщений: 97
Alexvmk
Все! все проблемы решили!


А у меня что-то никак не получается, - попробывал Ваш скрипт. Сам джоб успешно отрабатывает, но вот блокнота с текстом так и нет ни клиентской машине, ни на серваке. Необходимая служба OracleJobScheduler запущена.

BEGIN
   DBMS_SCHEDULER.create_job
      (job_name                 => 'test4',
       job_type                 => 'EXECUTABLE',
       job_action               => 'cmd.exe notepad.exe',
       number_of_arguments      => 1,
       auto_drop => false
      );
   DBMS_SCHEDULER.set_job_argument_value
      (job_name               => 'test4',
       argument_position      => 1,
       argument_value         => 'd:\temp\test.txt'
      );
   DBMS_SCHEDULER.ENABLE ('test4');
END;
2 сен 09, 17:41    [7609764]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
SQL*Plus
Member

Откуда: Россия, Москва
Сообщений: 8136
pixela
       job_action               => 'cmd.exe notepad.exe',

Попробовал запустить через Start -> Run -> cmd.exe notepad.exe
и решил, что cmd.exe здесь лишнее...
2 сен 09, 18:04    [7609933]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
pixela
Member

Откуда: Санкт-Петербург
Сообщений: 97
SQL*Plus
pixela
       job_action               => 'cmd.exe notepad.exe',

Попробовал запустить через Start -> Run -> cmd.exe notepad.exe
и решил, что cmd.exe здесь лишнее...


да, я уже по всякому пробывал и без cmd.exe такая же картина - сам джоб отрабатывает, статус SUCCEEDED.
2 сен 09, 18:09    [7609972]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
Elic
Member

Откуда:
Сообщений: 29991
pixela
да, я уже по всякому пробывал и без cmd.exe такая же картина - сам джоб отрабатывает, статус SUCCEEDED.
Запуск GUI из Oracle-а - даже мысль об этаком есть маразм
Hint: у служб есть "Allow service to interact with Desktop"
2 сен 09, 18:25    [7610067]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
SQL*Plus
Member

Откуда: Россия, Москва
Сообщений: 8136
pixela
да, я уже по всякому пробывал и без cmd.exe такая же картина - сам джоб отрабатывает, статус SUCCEEDED.
А вы проверьте - есть ли среди процессов Windows запущенный notepad.exe
2 сен 09, 18:26    [7610070]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
pixela
Member

Откуда: Санкт-Петербург
Сообщений: 97
Elic
pixela
да, я уже по всякому пробывал и без cmd.exe такая же картина - сам джоб отрабатывает, статус SUCCEEDED.
Запуск GUI из Oracle-а - даже мысль об этаком есть маразм


Данным примером, я просто "щупаю" пакет DBMS_SCHEDULER, насколько он может пригодится как планировщик. Также интересует как будут выполняться команды ОС, запуск батников и т.п. Вот и пытаюсь потренироваться на гуёвых приложениях - нагляднее. :-)
2 сен 09, 18:45    [7610150]     Ответить | Цитировать Сообщить модератору
 Re: dbms_scheduler JOBS  [new]
pixela
Member

Откуда: Санкт-Петербург
Сообщений: 97
SQL*Plus
pixela
да, я уже по всякому пробывал и без cmd.exe такая же картина - сам джоб отрабатывает, статус SUCCEEDED.
А вы проверьте - есть ли среди процессов Windows запущенный notepad.exe


нет
2 сен 09, 18:46    [7610154]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: dbms_scheduler JOBS  [new]
Gustly
Member

Откуда:
Сообщений: 1426
От СИСа джоб успешно запускает батник. Если создаю под кем-нибудь другим такой же джоб, то вылетает

+
ORA-27370: сбой подчиненного процесса при запуске задания типа EXECUTABLE
ORA-27300: сбой операции ОС:accessing job scheduler service со статусом: 2
ORA-27301: сообщение об ошибке ОС: The system cannot find the file specified.
ORA-27302: сбой в: sjsec 6a
ORA-27303: дополнительная информация: The system cannot find the file specified.
ORA-06512: на "SYS.DBMS_ISCHED", line 185
ORA-06512: на "SYS.DBMS_SCHEDULER", line 486
ORA-06512: на line 1

View program sources of error stack?

Сам джоб запускает батник для копирования произвольного файла с одного диска на другой. В чем может быть проблема? Каких прав не хватает?
10 июл 13, 12:20    [14546079]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить