[Comm] Sybase ASA in Linux

Eugene Prokopiev =?iso-8859-1?q?john_=CE=C1_rmts=2Edonpac=2Eru?=
Чт Июн 10 14:29:40 MSD 2004


Alexey Morsov пишет:

> 
> Eugene Prokopiev wrote:
> 
>> Alexey Morsov пишет:
>>
>>> Привет,
>>>
>>> Сил моих нет больше - как можно делать такую кривизну...
>>> Есть sybase asa сервер в сетке (под win) - к нему конектиться моя 
>>> программа (на Си под linux) и забирает данные....
>>> Так вот фича в том что когда запускаешь ее из под рута или юзера - 
>>> она срабатывает - а вот когда она пускаеться кроном (вроде как от 
>>> рута) то она валиться... точнее сказат не могу ибо никакх данны в 
>>> свой лог она не выдает...
>>>
>>> sybase-овские чуды в /opt/ стоят, перменные ASANY и LD_LIBRARY_PATH 
>>> установлены... файл .odbc.ini прописан и раскидан где только 
>>> можно.... Уже пробовал запускать из крона не саму проггу а shell 
>>> скрипт где сначал аделаеться cd в ту директорию где лежит прогга и 
>>> .odbc.ini - вроде как вчера начало работать - а сегодня частоту 
>>> запуска в кроне поменял и опять ничего не работает?
>>
>>
>>
>> Конкретного ничего посоветовать не могу, помню только, что у меня 
>> аналогичная прога, написанная с использованием сайбейсовской 
>> ct-library, запускалась исключительно от имени пользователя sybase, 
>> созданного при установке клиента Sybase ASE. Т.е., наверное, 
>> настраивая переменные окружения и всякие конфиги, можно было добиться 
>> работоспособности и под другим пользователем, но мне легче было 
>> переделать ее (не слишком сильно) под сизифовский freetds.
>>
>> Но, боюсь, Вам это не поможет. Протокол tds разных версий используют 
>> вроде как только ASE и MS SQL :(
>>
>> Да, проверьте свой код на стандартные проблемы с управлением памятью. 
>> Понимаю, что наверняка Вы это уже делали, но меня одно время страшно 
>> удивляло, отчего один и тот же код скомпилированный под freetds 
>> выдавал галиматью, а под ct-library просто валился. Дело оказалось 
>> именно в этом.
> 
> Вы знаете - прогга перестала валиться... теперь она честно (из под 
> крона) пишет в свой лог что Can't Connect to databse .... - это уже 
> понятнее - но вы случаем не знаете - КУДА ей надо положить этот дурацкий 
> odbc.ini с рописанными данными для базы - чтоб оно его узрело.. ну 
> просто пипец какой-то....

Не знаю. Я вообще страшно удивлен тем фактом, что вы используете odbc. А 
сам движок odbc (не драйвер для ASA) какой: от сайбейса или альтовский? 
А в коде у Вас тоже стандартные odbc-функции?

Просто я думал, что Open Client для ASA работает аналогично ASE, т.е. 
без всяких odbc. Просто средствами dsedit описывается псевдоним для 
сервера, а где он там хранится - не вникал.

> Сил нет - ну что - ннельзя было человеческий API сделать - по 
> человечески положить все в /etc и в /usr/lib? ну на кой ляд надо такие 
> танцы вокруг пустого места :`-(

в коммерческих СУБД так не принято :)

почему я и забил на Open Client и пересел на freetds - там сделано 
именно так

Вот решил глянуть в гугл - 
http://manuals.sybase.com/onlinebooks/group-aw/awg0800e/dbdaen8/@Generic__BookTextView/8840

Если я правильно понял написанное там, freetds вполне может Вас 
устроить. Попробуйте

-- 
С уважением, Прокопьев Евгений




Подробная информация о списке рассылки community