Протокол Oracle TCP не является проводным. В некоторых ситуациях он ведет себя так же, как FTP. Например, он может открывать дополнительные TCP-соединения на динамически выделяемом порту.
Протокол Oracle TCP использует бит OOB в заголовке TCP. Это иногда может вызвать проблемы при обертывании TCP в TCP.
Скорее всего, у вас проблемы с первым пунктом. Используйте strace
/tcpdump
, чтобы выяснить, пытается ли sqlplus
открыть второе соединение.
Согласно № 1 из этого вопроса и этого ответа , процессы загрузки stderr и stdout по умолчанию никуда не перехватываются, если они явно не перенаправлены в системный журнал. Однако можно использовать такой инструмент, как bootlogd , демон, запускаемый sysvinit, для перехвата этих сообщений.
В вашем случае такая служба должна запускаться до klogd, что, в зависимости от дистрибутива, может быть достигнуто с использованием заголовков инициализации LSB.