WikiPrint - from Polar Technologies

Instalacja rozszerzenia ORACLE dla PHP

Generalnie całość instalacji przechodzi bez przeszkód, posługując się oficjalną dokumentacją ORACLE, z tą różnicą że pakiety na Linux należy pobrać manualnie i zainstalować poprzez dpkg:

wget https://oss.oracle.com/debian/dists/unstable/non-free/binary-i386/oracle-xe-client_10.2.0.1-1.2_i386.deb
apt-get install libaio1
dpkg -i oracle-xe-client_10.2.0.1-1.2_i386.deb

Konieczne dodanie ścieżek do /etc/profile. W tym celu należy edytorem np. [vim wiki:AdminGuide/Vim] otworzyć plik /etc/profile oraz do /etc/apache2/envvars i wpisać tam:

ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/client
export ORACLE_HOME
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin

Klient już działa, o ile utworzymy definicję połaczenia TNS:

mkdir -p /usr/lib/oracle/xe/app/oracle/product/10.2.0/client/network/admin
vim /usr/lib/oracle/xe/app/oracle/product/10.2.0/client/network/admin/tnsnames.ora

Do pliku tnsnames.ora należy wpisać dane: CERES zastepujemy nazwą:http://www.orafaq.com/wiki/Tnsnames.ora

CERES =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = SEARS)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = CERES)
)
)

Następnie instalacja peclem rozszerzenia php:

pecl install oci8-2.0.12
w trakcie należy podać ścieżkę do ORACLE_HOME (tą samą co wyżej w zmiennej ORACLE_HOME)

Następnie dodajemy plik z treścią: extension=oci8.so
vim /etc/php5/conf.d/20-oci.ini

Restart apache. W tym momencie powinny działać już przykładowe skrypty php do połączenia z ORACLE. oci_connect.

Po udanym teście można rozpocząć konfigurację źródła ORACLE w eDokumenty.

TROUBLESHOOTING

wget http://www.ehcp.net/other/sdk.zip # get oracle sdk from ehcp.net
unzip sdk.zip
cp -Rvf sdk /opt/oracle/instantclient/