У нас есть несколько пакетных сценариев (.bat) в Windows для выполнения «резервного копирования» и «архивного журнала» для баз данных.Эти сценарии периодически вызываются из Tivoli.
Для каждого исполняемого сценария процесс создает подсессию для загрузки среды DB2cmd, для выполнения команд db2 и выхода.
daily.bat
call db2cmd hourly.cmd
Содержание сценария таково:
db2_job_saveddaily.cmd
db2 -fE:\DB2\scripts\tmp\db2_job_savedbhourly.db2 -zE:\DB2\scripts\tmp\db2_job_savedbhourly.log
exit
содержимое файла db2 (однако, это не важно, поскольку оно выполняется правильно)
db2_job_saveddaily.db2
archive log for database ICMNLSDB
Мы столкнулись с проблемой этихсценарии, и я думаю, что это связано с exit .При одном выполнении скрипт останавливается и начинает использовать весь процессор (см. Прикрепленное изображение).После этого поведения мы не можем выполнить любую другую команду DB2 из CLP.Мы убиваем все процессы CMD.exe и db2bp.exe, но ошибка сохраняется.В файле db2diag.log ничего нет, и единственное решение - перезагрузить компьютер.Вероятно, процесс CMD.exe теряет связь с db2bp.exe, и выход не может быть выполнен.Я хотел бы понять причину этой проблемы и узнать, как выполнять процессы db2 в Windows.