powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / DB2v11.5 for LUW. System storproc.
12 сообщений из 12, страница 1 из 1
DB2v11.5 for LUW. System storproc.
    #39926335
curious_man
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.
Стоит задача написать хранимаю процедуру на java в db211.5 for luw или использовать системную хранимую процедуру
для запуска скриптов в средах Linux,Windows. Т.е умение запускать скрипты на той OS, где и установлена db2.
Может есть эта возможность в системных хранимых процедурах? Если да, то как называется хранимка.
Если нет, то придется писать тогда вручную(
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39928119
curious_man
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Написал процедуру. Однако при выполнении ее встречается ошибка:

При попытке запустить любую команду 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.
CREATE PROCEDURE DB2ADM.EXAMPLEROUTINE1(IN inname  VARCHAR(100), OUT outname VARCHAR(100))
                     SPECIFIC JDBC_EXAMPLEROUTINE1
                     DYNAMIC RESULT SETS 0
                     DETERMINISTIC
                     LANGUAGE JAVA
                     PARAMETER STYLE JAVA
                     NO DBINFO
                     FENCED
                     THREADSAFE
                     MODIFIES SQL DATA   --READS SQL DATA
                     PROGRAM TYPE SUB
                     EXTERNAL NAME 'DB2ADM.MYJAR2:Routine1.ExampleRoutine1';



Может из-под db2 запрещен запуск cmd команд и скриптов? Для инфы, сама db2 у меня работает под юзером, имеющим
права администратора на комп.
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39928129
curious_man
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может буден полезен лог в момент запуска процедуры. Прикрепляю.
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39928825
A.Panskikh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
curious_man,

самое правильное в этой ситуации - выплюнуть из db2 СОБЫТИЕ. например, кинуть в MQ или создать семафор
CALL SYSPROC.ADMIN_CMD ('EXPORT to 1.sem of del select 1 from sysibm.sysdummy1'), который обработать снаружи.
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39929123
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
curious_man,

Добрый день.

У вас скрипты без явного вызова cmd тоже не запускаются?
Т.е. если просто указать имя скрипта somefile.bat.
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39929584
curious_man
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
A.Panskikh,

И после того как я кину в MQ очередь, сам MQ как то запустит файл somefile.bat на этом сервере?
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39929591
curious_man
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mark Barinstein,

Действительно, если в файле указываю одну команду Windows, например SYSTEMINFO то ее запускает.
Т.е одиночные выполняет.
А вот например выполнить эту команду:
copy NUL ftp3.txt

виснет намертво. Буду детальнее разбираться.
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39929698
CawaSPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
curious_man
Mark Barinstein,

Действительно, если в файле указываю одну команду Windows, например SYSTEMINFO то ее запускает.
Т.е одиночные выполняет.
А вот например выполнить эту команду:
copy NUL ftp3.txt

виснет намертво. Буду детальнее разбираться.

Возможно потому, что нет такого выполняемого файла "copy.exe", а copy - это команда command line интерпретатора?
Попробуйте:
Код: powershell
1.
cmd.exe /c copy NUL ftp3.txt
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39930258
curious_man
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
CawaSPb,

Да, действительно, так заработало.
Ну пока программа минимум выполнена.

Всем спасибо за помощь.
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39930262
CawaSPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
curious_man
CawaSPb,

Да, действительно, так заработало.
Ну пока программа минимум выполнена.

Всем спасибо за помощь.

Всегда пожалуйста.
BTW А вы рассматриваете ситуацию, что вызвавшая внешнее событие транзакция может откатиться?
И да, лучше, конечно, внешние действия производить асинхронно.
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39930403
A.Panskikh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
curious_man
A.Panskikh,

И после того как я кину в MQ очередь, сам MQ как то запустит файл somefile.bat на этом сервере?


Обработать сообщения из очереди можно миллионом возможных способов. В том числе, и с других серверов.
А вот если у вас, после каждого вызова через костыль, любезно предоставленный ibm, останется висеть процесс cmd.exe, с открытыми хендлами - то через некоторое время серверу станет плохо.
...
Рейтинг: 0 / 0
DB2v11.5 for LUW. System storproc.
    #39930426
curious_man
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
A.Panskikh,

Я специально для этого случая создал отдельный класс, который ожидает N sec и если за это время процесс не завершился,
то делает ему kill. Это все на уровне java запраграммировал. Вроде работает.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / DB2v11.5 for LUW. System storproc.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]