проблема с php_oci8.dll

Mishanya

Новичок
проблема с php_oci8.dll

Здравствуйте!Это моё первое сообщения на этом форуме.Возникла проблема, надеюсь вы мне сможете помочь!..
Ситуация следующая:
Установил дома на машине:
PHP5.1.4 + Apache2.2+MySQL3.23.49+Oracle9.2

При запуске php.exe через cmd пишет:
PHP Warning: PHP Startup: oci8: Unable to initialize module
Module compiled with module API = 20001222, debug = 0, thread-safety=1
PHP compiled with module API = 20050922, debug = 0, thread-safety=1
This options need to match
in Unknown on line 0

При выполнении скриптов выдается warning:
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\php-5.1.4\ext\php_oci8.dll' - Не найден указанный модуль. in Unknown on line 0

В php.ini у меня прописано:
extension_dir = "C:\php-5.1.4\ext"
....
extension=php_oci8.dll

В C:\php-5.1.4\ext лежит php_oci8.dll, также запихнул ее в D:\Windows и в D:\Windows\system32

Установил переменные среды:
ORACLE_HOME = C:\oracle\ora92
ORACLE_SID = baza

нашел подобную проблему вот здесь:
http://phpclub.ru/talk/showthread.php?threadid=55014&perpage=20&pagenumber=1

Почитал, но проблема не решилась.
1)Что делать?
2)Правильно ли я понимаю значение переменных среды:
ORACLE_HOME - путь к папкам lib, bin, admin, database....
ORACLE_SID - имя созданного мной при установке оракла экземпляра БД
3)В Apache Service Monitor отображается два сервера апач:
Apache2.2 - который я сам установил
OracleOraHome92HTTPServer - оракловый
Они должны быть оба запущены?

Спасибо...
 

tony2001

TeaM PHPClub
>Module compiled with module API = 20001222, debug = 0, thread-safety=1
>PHP compiled with module API = 20050922, debug = 0, thread-safety=1

PHP новый, а .dll - старый.

>PHP Warning: PHP Startup: Unable to load dynamic library
>'C:\php-5.1.4\ext\php_oci8.dll' - Не найден указанный модуль. in Unknown on line 0

Не стоит клиент Оракла, либо не указан ORACLE_HOME в переменных окружения машины.

>В C:\php-5.1.4\ext лежит php_oci8.dll, также запихнул ее в D:\Windows и в D:\Windows\system32

гхм. Винда отличается особой тупостью, поэтому сообщение звучит как "не найден указанный модуль", хотя имеется ввиду Oracle Client.

>OracleOraHome92HTTPServer - оракловый

о-господи-что-это-такое-и-зачем-это-нужно?
 

Quessir

Новичок
В %system32% не php_oci8.dll надо пихать, а модуль клиентских библиотек (Оракла 8). По-моему он с дистрибутивом РНР не поставляется. Его отдельно надо скачать.

-~{}~ 23.07.06 13:51:

Кстати, я не уверен, что твой Оракл 9.2 будет под РНР с oci8 работать№
 

Mishanya

Новичок
PHP новый, а .dll - старый.
Заменил на php_oci8.dll на версию 5.2.0(сам пхп версии 5.1.4)

Теперь ри запуске php.exe через cmd выдается сообщение в окошке:
Точка входа в процедуру OCILobRead2 не найдена в библиотеке DLL OCI.dll
и Затем в консоле пишет:
PHP Warning: PHP Startup: Unable to load dynamic library
'C:\php-5.1.4\ext\php_oci8.dll' - Не найден указанный модуль. in Unknown on line 0

Не стоит клиент Оракла, либо не указан ORACLE_HOME в переменных окружения машины.
Установил сервер и клиент соответственно.В системных переменных среды прописал:
ORACLE_HOME = C:\oracle\ora92
ORACLE_SID = baza
Также они отображаются в php_info()

гхм. Винда отличается особой тупостью, поэтому сообщение звучит как "не найден указанный модуль", хотя имеется ввиду Oracle Client.
Поставил Oracle Instant Client:
1.Распоковал все библиотки в C:\instantclient_10_2
2.Прописал в системных переменных окружения в path путь к этим библиотекам.Перезагрузился.Не помогло

>OracleOraHome92HTTPServer - оракловый
о-господи-что-это-такое-и-зачем-это-нужно?
Серьезно?Я не знаю...
 

tony2001

TeaM PHPClub
см. предыдущий пост.
нужен Oracle Instant Client, никаких OracleOraHome92HTTPServer не надо.
 

Mishanya

Новичок
Я же написал что поставил его:
Поставил Oracle Instant Client:
1.Распоковал все библиотки в C:\instantclient_10_2
2.Прописал в системных переменных окружения в path путь к этим библиотекам.Перезагрузился.Не помогло

Правильно ли я сделал?Просто распоковал и все?

OracleOraHome92HTTPServer я спецом не ставил.Это служба какаято она с оракл поставилась.Просто в мониторе Apache она отображается.Просто интересно что это такое..

Спасибо..
 

tony2001

TeaM PHPClub
что значит "не помогло"?

>ORACLE_HOME = C:\oracle\ora92
ORACLE_HOME и ORACLE_SID для Instant Client не нужны.
обычный клиент в этом случае тоже не нужен.
 

Mishanya

Новичок
не помогло - значит ничего не изменилось.Может версию пхп обновить?
 

tony2001

TeaM PHPClub
>не помогло - значит ничего не изменилось
блин. можно, наконец, переключиться на русский язык и объяснить в чем конкретно проблема?

>Может версию пхп обновить?
до чего? до 7-ки? а может мануал начать читать вместо слепых действий?
 

Mishanya

Новичок
ну до 6-ки ?а где мануал почитать, подскажеш?

-~{}~ 23.07.06 17:11:

Я же вроде описал в чем пробема:
при запуске php.exe через cmd выдается сообщение в окошке:
Точка входа в процедуру OCILobRead2 не найдена в библиотеке DLL OCI.dll
и Затем в консоле пишет:
PHP Warning: PHP Startup: Unable to load dynamic library
'C:\php-5.1.4\ext\php_oci8.dll' - Не найден указанный модуль. in Unknown on line 0
 

tony2001

TeaM PHPClub
>Точка входа в процедуру OCILobRead2 не найдена в библиотеке DLL OCI.dll
потому, что OCI.dll - от старого клиента, а не от Instant Client.
почему она от старого клиента - понятия не имею.
может, ты разбросал OCI.dll по всей системе, а может надо перегрузиться и сделать магические пассы.
 

Mishanya

Новичок
да нет, не разбрасывал.Сделал поиск : OCI.dll есть в C:\oracle\ora92\bin - судя по всему старый и в C:\InstantClient_10_2 - новый.Какие магические пассы?+)
 

Mishanya

Новичок
...

-~{}~ 23.07.06 22:23:

Попробкю заново!
Опишу последовательность действий при установке
1)В php.ini
extention_dir = c:/php-5.1.4/ext
extention = php_mysql.dll
extention = php_oci8.dll
2)c:/instantclient - поместил в корень сюда все .dll oracle instant client
Добавил в path ситемную переменную c:/instantclient


при запуске php.exe через cmd выдается сообщение в окошке:
Точка входа в процедуру OCILobRead2 не найдена в библиотеке DLL OCI.dll
и Затем в консоле пишет:
PHP Warning: PHP Startup: Unable to load dynamic library
'C:\php-5.1.4\ext\php_oci8.dll' - Не найден указанный модуль. in Unknown on line 0

-~{}~ 23.07.06 22:24:

Скажите пожалуйста я правильно установил oracle instant client?

-~{}~ 24.07.06 12:25:

Точка входа в процедуру OCILobRead2 не найдена в библиотеке DLL OCI.dll
-это сообщение больше не выдается.(Я просто не правильно прописал путь к библиотекам Oracle Instant Client в переменных окружения)
Теперь при выполнении любого скрипта пишется:
ntPHP Warning: PHP Startup: Unable to load dynamic library 'c:/php-5.1.4/ext/php_oci8.dll' - Не найден указанный модуль. in Unknown on line 0

Что это значит, ответьте пожалуйста!

-~{}~ 24.07.06 12:39:

При установке пользовался мануалом:
http://www.oracle.com/technology/pub/notes/technote_php_instant.html

-~{}~ 24.07.06 18:04:

И В phpinfo() пишет:
oci8
OCI8 Support enabled
Revision $Revision: 1.269.2.16 $
Active Persistent Connections 0
Active Connections 0
Temporary Lob support enabled
Collections support enabled

В чём же проблема?
 

tony2001

TeaM PHPClub
Это:
>PHP Warning: PHP Startup: Unable to load dynamic library 'c:/php-5.1.4/ext/php_oci8.dll' - Не найден указанный модуль. in Unknown on line 0

и это:
>И В phpinfo() пишет:
>oci8
>OCI8 Support enabled

противоречит друг другу.
не может быть такого, что модуль одновременно И подключен, И НЕ подключен.
либо то, либо другое.
 

Mishanya

Новичок
Но я же не вру!Что посоветете?Я уже замучался с этой прблемой!
 
Сверху