- First prerequirements are a working apache2 and php7.2 (Ubunti 18.04) environment.
- Download the basic (like instantclient-basic-linux.x64-12.2.0.1.0.zip) and the sdk (instantclient-sdk-linux.x64-12.2.0.1.0.zip) package from the Oracle Website http://www.oracle.com/technetwork/database/database-technologies/instant-client/downloads/index.html
- Upload both files to your webserver, you can use WinSCP (windows) or rsync/scp (linux) for it
- Unzip both files on server, in my case, you will get a new folder named "instantclient_12_2"
- Create destination folder : mkdir /opt/oracle
- Move and rename the instantclient folder: mv instantclient_12_2 /opt/oracle/instantclient
- Change rights on folder: chown -R root:www-data /opt/oracle
- Check if you have the required packages for installing OCI8: apt install php7.2-dev php-pear build-essential libaio1
- Create necessary soft links: ln -s /opt/oracle/instantclient/libclntsh.so.12.1 /opt/oracle/instantclient/libclntsh.so; ln -s /opt/oracle/instantclient/libocci.so.12.1 /opt/oracle/instantclient/libocci.so
- Add instant client to ld config files : echo /opt/oracle/instantclient > /etc/ld.so.conf.d/oracle-instantclient.conf
- Update Dynamic Linker Run-Time Bindings : ldconfig
- Now install OCI8 by pecl: pecl install oci8
- The OCI8 installation is asking you for the right folder: instantclient,/opt/oracle/instantclient
- Add oci lib to the cli php config (console php): echo "extension = oci8.so" >>/etc/php/7.2/cli/php.ini
- Add oci lib to the apache php config: echo "extension = oci8.so" >> /etc/php/7.2/apache2/php.ini
- Set environment variables for the cli version (you will need to reboot the server after): echo "LD_LIBRARY_PATH=\"/opt/oracle/instantclient\"" >> /etc/environment echo "ORACLE_HOME=\"/opt/oracle/instantclient\"" >> /etc/environment
- Set environement variables for the apache version: echo "export LD_LIBRARY_PATH=\"/opt/oracle/instantclient\"" >> /etc/apache2/envvars; echo "export ORACLE_HOME=\"/opt/oracle/instantclient\"" >> /etc/apache2/envvars
- Restart Apache: service apache2 restart or systemctl restart apache2
- You're done, now you can test your connection to the Oracle database
Tuesday, October 9, 2018
How to install oci8 instant client for Ubuntu Linux
Subscribe to:
Post Comments (Atom)
Second monitor no display after latest update - KDE-neon
After latest update as of Oct 3, 2023, my second monitor was undetected with latest kernel (6.2.0-33-generic). If I boot with previous kern...
-
I've installed latest squid (3.2.0.3) recently from source. I configured it with --with-icmp to enable incoming icmp request. After com...
-
Linux bash history with Page up / Page down In linux you can configure the pgup/pgdown keys to navigate through commands you typed that...
-
postfix is my MTA of choice. I use it for my mailserver because its simplicity , security and sendmail-compatible (the widely used smtp in...
No comments:
Post a Comment