parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Проблема с Parser и MySQL на различных хостингах

Runet 25.06.2008 11:43 / 25.06.2008 11:54

Заранее сорри, что длинновато получилось, но зато все как было - во всех подробностях.

Системная информация - http://webxl.ru/
Версия Apache: 1.3.41 (Unix)
Версия MySQL: 5.0.51a-community-log
Версия ядра: О/С 2.6.23.15-80.fc7

после запуска в логах пошла ошибка: …driver failed to initialize client library './lib/libmysqlclient.so'…

зашел в FAQ, откуда скопировал решение и написал в службу поддержки, попросив сказать мне путь который нужно указать.

прислали:
Есть
/usr/lib/libmysqlclient.so
а также есть
/usr/lib64/libmysqlclient.so
Попробуйте один из них.
пробую, и проблема принимает иной вид:
[Mon Jun 23 16:20:30 2008] /forum/: /home/am/mysite.ru/forum/auto.p(26:2): './lib/libparser3mysql.so' ./lib/libparser3mysql.so: wrong ELF class: ELFCLASS64 [<no type>]
поискав подобные проблемы на форуме, написал ответ:
Не заработало. Возможно дело в том что библиотека и там и там 64 битная, а нужна 32. Что делать?
пришел ответ:
Здравствуйте.
Мы пробовали переустановить парсер однако безрезультатно.
Рекомендуем Вам обратиться к разработчикам parcer с вопросом о данной проблеме.
продолжаю переписку:
Судя по записям в логе, все упирается в библиотеку libmysqlclient.so
На форуме парсера нашел решение, сводящиеся к поиску нужной библиотеки, которая должна быть 32 битной, а не 64.
Судя по тому, что вы пробовали это было экспериментирование с libparser3mysql.so - с которым все порядке.

Вот запись с лога, на последней строчки (ELFCLASS64) хорошо видно, что что-то не так с используемой платформой.
[Mon Jun 23 16:20:30 2008] /forum/: /home/am/mysite.ru/forum/auto.p(26:2): './lib/libparser3mysql.so' ./lib/libparser3mysql.so: wrong ELF class: ELFCLASS64 [<no type>]

Видимо все таки нужна, соответствующая libmysqlclient.so. Может вы можете ее предоставить?

Можно узнать, что вы поменяли? Насколько я помню, раньше проблем подобного рода не возникало.
приходит ответ:
Здравствуйте.
Полностью перекомпилировали весь Ваш parser - помогло. Как Вы и говорили, проблема в том, что предоставленные разработчиками бинарные версии не совместимы с нашей платформой, поэтому полная перекомпиляция из исходных кодов помогла.
попробовал, пишу ответ:
Здравствуйте. Спасибо, но нарисовалась следующая проблема, теперь перестали обрабатываться парсером простые файлы, имеющие код не имеющий отношения к mysql.
Пример тестовая страница http://mysite.ru/test.html

и удивительно следующее, что с обычным парсером все наоборот, как раз тестовая страница работает, а все что связано с mysql - нет.
на что пришло следующее:
Здравствуйте.
Достаточно много времени мы эксперементировали с parser\'ом, однако результатов мало. Старый бинарник работает с test.html но не работает с mysql. Бинарник скомпилированный нами работает с /forum/ но не работает с test.html
При этом мы пробовали перекомпилировать файл:
БЕЗ XML
С опцией --disables-safe-mode
Результатов это не дало.

Возникающая ошибка \"Premature end of script headers\" однако ничего из перечисленного на странице http://www.parser.ru/faq/install/ не помогает.

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

Есть три варианта. Вы можете через .htaccess подключить к форуму файл parser3.cgi а для остальных файлов подключить файл parser3.cgi-txt (это файл который обрабатывает test.html).
Другой вариант - проверить parser3.cgi сначала в деле, может быть не на странице test.html он все же бьудет работать нормально, ведь форум он обрабатывает без проблем.

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



Продолжение проблемы, часть 2
Системная информация - http://jino.ru/
Операционная система: Linux version 2.6.22.14-72.fc6
Версия MySQL: 5.0.45

попутно покупаю другой хостинг, устанавливаю Parser, пробую тестовую страницу - работает.
Далее переходим к БД и вот привожу лог с уже другой службой поддержки...

запрос:
24.06.2008 15:37
Установил Parser, который брал по адресу: http://www.parser.ru/download/redhat/
Тестовая страница работает, но не работает подключение к бд-mysql.

В логах ругается следующими словами:
[Tue Jun 24 15:32:36 2008] [13038] /: /home/users/i/internet/domains/internet.jino.ru/auto.p(6:2): './lib/libparser3mysql.so' driver failed to initialize client library 'libmysqlclient.so', libmysqlclient.so: cannot open shared object file: No such file or directory [<no type>] [uri=/, method=GET, cl=0]

В выписке из ошибок на офф-сайте сказано:
…driver failed to initialize client library '/path/to/libmysqlclient.so'…
Попытка парсера обратиться к клиентской библиотеке SQL сервера libmysqlclient.so не увенчалась успехом. Вам нужно узнать у вашего системного администратора полный дисковый путь к этому драйверу и прописать его в таблицу $SQL:drivers в главном конфигурационном файле.


Какой нужно указывать путь? Заранее хочу предупредить что библиотека скорее всего нужна 32, а не 64...

А еще лучше, сами посмотрите что и как нужно установить и сделать так - что бы все работало.
ответ службы поддержки:
Здравствуйте. Попробуйте все-таки такой путь: /usr/lib64/libmysqlclient.so
(*lib64* а111 адин адин 11 адин 1111 - простите, нервы уже не к черту)

пишу им ответ
Не помогло.
Попробуйте, пожалуста, сами сделать так что бы все заработало. Я перепробовал все что в моих силах. И к сожалению у меня нет достаточных знаний для решения проблем подобного рода.
пока дальнейшего развития событий нет...