У нас есть база данных Oralce 11.2.0.4.Триггер имеет код, который использует библиотеки pkg_libc.system для вызова основных команд os, таких как ls, rm и т. Д.
В нашей производственной среде (REDHAT 7.2) триггер работает как положено.
В нашей среде pre-prot (AWS, EC-2, REDHAT 7.2) проблемы триггера возникают при вызове команд ОС pkg_libc.system, если в коде не используется полный путь.
Например,
select pkg_libc.system('ls') from dual;
PKG_LIBC.SYSTEM('LS')
---------------------
32512
select pkg_libc.system('/bin/ls') from dual;
PKG_LIBC.SYSTEM('/BIN/LS')
--------------------------
0
Мы испробовали все приведенные ниже решения, но ничего не работает, как
1) Мы устанавливаем переменные среды PATH в bash_profile, bashrc и т. Д., Но всякий раз, когдаpkg_libc выполняется. Переменная окружения PATH поставляется пустой.2) Мы изменили с bash sheel на korne, но та же ошибка.3) Экспортировать только определенные переменные среды, но это не удается.
Наша конечная цель - заставить команды ОС, такие как ls, chown, rm и т. Д., Работать без использования полного пути.
Если кто-то может помочь, пожалуйста, здесь.
С уважением, Lancerique.