|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
Здравствуйте. Стоит задача написать хранимаю процедуру на java в db211.5 for luw или использовать системную хранимую процедуру для запуска скриптов в средах Linux,Windows. Т.е умение запускать скрипты на той OS, где и установлена db2. Может есть эта возможность в системных хранимых процедурах? Если да, то как называется хранимка. Если нет, то придется писать тогда вручную( ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2020, 16:38 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
Написал процедуру. Однако при выполнении ее встречается ошибка: При попытке запустить любую команду cmd интерпретатора выдает ошибку: java.io.IOException: Cannot run program "tree": CreateProcess error=2, at java.lang.ProcessBuilder.start(ProcessBuilder.java:1052) at java.lang.Runtime.exec(Runtime.java:628) at java.lang.Runtime.exec(Runtime.java:461) at java.lang.Runtime.exec(Runtime.java:358) та же ошибка и в случае, когда пытаюсь запустить скрипт в cmd: cmd /c start /wait somefile.bat Создавал хранимку с этими параметрами: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Может из-под db2 запрещен запуск cmd команд и скриптов? Для инфы, сама db2 у меня работает под юзером, имеющим права администратора на комп. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2020, 18:01 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
Может буден полезен лог в момент запуска процедуры. Прикрепляю. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2020, 18:19 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
curious_man, самое правильное в этой ситуации - выплюнуть из db2 СОБЫТИЕ. например, кинуть в MQ или создать семафор CALL SYSPROC.ADMIN_CMD ('EXPORT to 1.sem of del select 1 from sysibm.sysdummy1'), который обработать снаружи. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2020, 11:59 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
curious_man, Добрый день. У вас скрипты без явного вызова cmd тоже не запускаются? Т.е. если просто указать имя скрипта somefile.bat. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2020, 18:42 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
A.Panskikh, И после того как я кину в MQ очередь, сам MQ как то запустит файл somefile.bat на этом сервере? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2020, 16:46 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
Mark Barinstein, Действительно, если в файле указываю одну команду Windows, например SYSTEMINFO то ее запускает. Т.е одиночные выполняет. А вот например выполнить эту команду: copy NUL ftp3.txt виснет намертво. Буду детальнее разбираться. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2020, 16:59 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
curious_man Mark Barinstein, Действительно, если в файле указываю одну команду Windows, например SYSTEMINFO то ее запускает. Т.е одиночные выполняет. А вот например выполнить эту команду: copy NUL ftp3.txt виснет намертво. Буду детальнее разбираться. Возможно потому, что нет такого выполняемого файла "copy.exe", а copy - это команда command line интерпретатора? Попробуйте: Код: powershell 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2020, 01:34 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
CawaSPb, Да, действительно, так заработало. Ну пока программа минимум выполнена. Всем спасибо за помощь. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 16:54 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
curious_man CawaSPb, Да, действительно, так заработало. Ну пока программа минимум выполнена. Всем спасибо за помощь. Всегда пожалуйста. BTW А вы рассматриваете ситуацию, что вызвавшая внешнее событие транзакция может откатиться? И да, лучше, конечно, внешние действия производить асинхронно. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 17:18 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
curious_man A.Panskikh, И после того как я кину в MQ очередь, сам MQ как то запустит файл somefile.bat на этом сервере? Обработать сообщения из очереди можно миллионом возможных способов. В том числе, и с других серверов. А вот если у вас, после каждого вызова через костыль, любезно предоставленный ibm, останется висеть процесс cmd.exe, с открытыми хендлами - то через некоторое время серверу станет плохо. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2020, 09:18 |
|
DB2v11.5 for LUW. System storproc.
|
|||
---|---|---|---|
#18+
A.Panskikh, Я специально для этого случая создал отдельный класс, который ожидает N sec и если за это время процесс не завершился, то делает ему kill. Это все на уровне java запраграммировал. Вроде работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2020, 10:00 |
|
|
start [/forum/topic.php?fid=43&fpage=4&tid=1600207]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 142ms |
0 / 0 |