2014-01-20 3 views
0

У меня есть служба, размещенная в IIS. Эта служба отвечает за выполнение командного файла. этот командный файл содержит команду IMP Oracle (вызов IMPORT файлом oracle imp.exe).Не удалось запустить команду ORACLE IMP/EXP из IIS

Проблема в том, что эта команда не выполняется (если командный файл содержит любую простую команду, такую ​​как создание нового файла - это работает нормально). Поэтому я предполагаю, что это проблема с разрешением (я пытался установить разрешение на некоторые каталоги без успеха).

может ли кто-нибудь знать, что я делаю неправильно?

Спасибо, Hagai

ответ

0

IIS, вероятно, работает как сервис с небольшим знанием окружающей среды. Мы запускаем exp/imp (или фактически в настоящее время улучшенный impdp/expdp, который является стабильным и необходим начиная с 11.2.0.3) из планировщика партий и имел те же начальные проблемы.

Пожалуйста, убедитесь, что у вас есть переменные среды правильно настроены:

  • ORACLE_HOME
  • TNS_ADMIN при использовании
  • NLS_LANG при использовании
  • PATH (включая% ORACLE_HOME% \ Bin)

Или установите их из своего сценария партии.

Чтобы лучше протоколирование вы, возможно, захотите добавить что-то вроде следующего для вашего исполнения имп/ехр:

set LOGFILE=%TEMPDIRSOMEWHERE%\oracle-imp.log 
imp ...options... >>%LOGFILE% 2>&1 

Если вы получаете ошибки, которые не понимают в лог-файл, Pleae добавить их в свой оригинал вопрос.

Это решило проблему для вас?

+0

привет Гвидо. Я вижу это в файле журнала: IMP-00058: ошибка ORACLE 1017 встречается ORA-01017: неверное имя пользователя/пароль; logon deniedUsername: –

+0

Отлично, что вы нашли причину. Укажите имя пользователя/пароль в командной строке или в файле управления. Например, 'imp userid = usr/pwd @ service'. Возможно, вы захотите загрузить их из переменных среды или с помощью параметра профиля. –

+0

Спасибо Гвидо !!! «Userid =» решил проблему :-) –

Смежные вопросы