У меня следующая проблема: в настоящее время я подключаюсь к одному из наших серверов Linux, используя PuTTY на моем компьютере с Windows 10. Если я использую «стандартное» соединение PuTTY, у меня нет проблем: я могу войти и запустить свой Perl-скрипт для доступа к базе данных Oracle на сервере Linux. Однако недавно я установил новое соединение PuTTY (я скопировал оригинальную рабочую копию, использованную выше). Единственное отличие от оригинала состоит в том, что я ввел следующее в разделе «Соединение-> SSH-> Удаленная команда» окна конфигурации PuTTY:

cd ../home/code/project1/scripts/perl ; /bin/bash

(Я сделал это, поэтому попадаю прямо в папку, содержащую все мои скрипты.)

Я все еще могу без проблем войти на сервер, и он сразу переходит в папку, содержащую мои Perl-скрипты. Однако, когда я запускаю скрипт для доступа к базе данных Oracle, я получаю следующую ошибку:

DBI connect('server1/dbname','username',...) failed: ERROR OCIEnvNlsCreate. Check ORACLE_HOME (Linux) env var  or PATH (Windows) and or NLS settings, permissions, etc. at PerlDBFile1.pl line 10.
impossible de se connecter à server1 / dbname at PerlDBFile1.pl line 10, <DATA> line 1.

Кроме того, если я запускаю команду 'env' на сервере, переменная $ ORACLE_HOME не отображается (если я запускаю ту же команду 'env' на сервере со стандартным соединением PuTTY, присутствует переменная $ ORACLE_HOME.)

Просто обратите внимание: запуск любого другого сценария Perl на сервере (который НЕ имеет доступа к базе данных Oracle) через один из созданных мной сеансов PuTTY работает без проблем.

1 ответ1

0

ОК, у меня есть решение! ...Спасибо всем, кто ответил.

По сути, у меня изначально была команда:

cd ../home/code/project1/scripts/perl ; /bin/bash (See original post)

Чтобы заставить его работать, я заменил вышеупомянутое

cd ../home/code/project1/scripts/perl; source ~/.bash_profile; /bin/bash

Я также попробовал:

cd ../home/code/project1/scripts/perl; /bin/bash; source ~/.bash_profile

Но это не сработало.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .