Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 22:25 04.07.25 
Компютри и Интернет
   >> Linux
*Кратък преглед

Тема php4+oci8 problemнови  
Автор gat3way (altered mind)
Публикувано10.09.04 15:36



Значи имам 2 машини - едната на win2k, на която има Oracle сървър и една на Linux, на която целта е да се пусне php script за репликация на Oracle данните във една PostgreSQL база.

Допреди време всичко си беше като хората. Линукската машина си беше на Debian, php executable-то си беше build-нато с oci8 support и всичко си ставаше като хората. Докато хората не решиха да сменят линукската машина с по-бърза такава. Ta по-бързата такава си имаше един много странен RAID контролер, за който имаше единствено компилирани kernel modules...за някакъв странен kernel, който идва с redhat 8.0....

Това наложи новата машина да бъде на Редхат. Оттам цялата галимация наново - инсталирах JRE, Oracle 9 клиент, компилирах php с oci8 support, копирах старите скриптове за репликацията....и БУМ изненада!

Репликацията си върви идеално, таблиците се вземат от oracle-a, отиват си в pgsql-a, с изключение на тези, които имат field-ове с данни на кирилица. Кирилицата просто не отива в pgsql таблиците. Отначало реших че е някакъв тъп проблем с locales, но не - впоследствие установих, че все пак има някои таблици, в които кирилицата си е наред.

Реших че е проблем на php binary-to. Прекомпилирах няколко версии на PHP, пробвах с oracle client libs 8 и 9. В доста случаи компилираното binary даваше segfault. Ако не segfault-не, то неизменно половината таблици с кирилица биват прецакани.

Какво ли не правих. Пробвах с прекомпилирани на други машини php binary-ta, играл съм си доволно много. По едно време реших, че проблема на тъпия RedHat e в старото му libc. Сложих му по-нов glibc, обаче ефекта нулев.

php binary-to според ldd зависи от следните shared libs:

libcrypt, libpq3, libresolv, libm, libdl, libnsl, libc, libpthread, както и от 2-те .so-та на Oracle клиент-а : libclntsh и libwtc.

Няма да ви казвам че съм си играл да сменям версиите и на гореизброените библиотеки. Но резултата остава същия: или segfault или прецакани field-ове на кирилица.

Не знам вече какво да правя, ще се превърна в някво зомби накрая, вярвайте ми отчаян съм !!!!

Някой от вас случайно да има някаква идея какво по дяволите бъркам?!? Защо Господ ме наказва по такъв шибан начин. HEEELP !

Spice extends life,spice expands consciousness.Spice is vital to space travel.Travel without moving.


Тема Re: php4+oci8 problem [re: gat3way]  
Автор phpGuruАдминистратор (член)
Публикувано10.09.04 17:22



ами значи не съм много цъкал с oracle, но когато си стартирам apache в стартиращият скрипт съм му сложил в environment-а да се зареждат тези променливи

ENV="env -i LANG=C PATH=/bin:/usr/bin:/sbin:/usr/sbin ORACLE_HOME=/opt/oracle/OraHome1 NLS_LANG=BULGARIAN_BULGARIA.CL8MSWIN1251"

по-специално NLS_LANG, може да ти трябва и друг енкодинг, може и да не е това проблема, ама да си кажа



Тема Re: php4+oci8 problemнови [re: phpGuru]  
Авторgat3way (Нерегистриран)
Публикувано13.09.04 13:00



проблема наистина се оказа с енкодинга накрая...мерси ;)




*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2025 Dir.bg Всички права запазени.