У меня есть приложение Websphere, которое работает под пользователем wsadmin
.
Приложение вызывает клиент массовой загрузки SQL. ./sqlldr
Для работы sqlldr требуются некоторые предопределенные переменные среды, например
ORACLE_BASE=/usr/app/oracle
ORACLE_HOME=/usr/app/oracle/product/11.2.0.1/client_64
ORACLE_SID=VDO1018
Можете ли вы сказать мне, где лучше всего разместить эти переменные. У меня есть несколько вариантов:
1) / etc / profile или / etc / environment
2) .bash_profile пользователя wsadmin
Причина, по которой я задаю этот вопрос, заключается в том, что sqlldr случайно не работает для нас, и в настоящее время переменные помещены в .bash_profile. поскольку .bash_profile используется для оболочек входа, я не уверен, будет ли он применяться для процесса JVM.
Я бы предложил попробовать установить это в WebSphere Application Server:
Используя административную консоль, перейдите к Серверы> Типы серверов> Серверы приложений WebSphere> название сервера > Инфраструктура сервера> Java и управление процессами> Определение процесса> Записи среды
Там вы можете добавить свою переменную окружения. Обратите внимание, что если вы запускаете приложение, кластеризованное на нескольких серверах, вам нужно будет установить это для всех из них.
Добавить: Я только что нашел технический комментарий, объясняющий это: http://ibm.com/support/docview.wss?uid=swg21254153