Feedback

Enabling Amazon RDS Oracle ODBC

At Scriptcase, we have the following drivers available for connection to Oracle: Oracle 8.0.5 or Higher, Oracle PDO, Oracle ODBC and Oracle 8 . If you are using your own pre-configured environment, Oracle extensions must be enabled manually in PHP.

IMPORTANT: If you are using Scriptcase’s automatic installer, the extensions are already enabled in PHP, ready for connection. The procedure below is only for manual installations of Scriptcase.

Prerequisites

Before proceeding with this documentation, check your PHP architecture. For drivers to be enabled correctly, files must be downloaded according to the architecture used.

  • In your Scriptcase, there is the file info.php, access it by the URL: http://127.0.0.1:8092/scriptcase/info.php, where you will find the information regarding the architecture in phpinfo().

CAUTION: Download the Oracle instant client according to your PHP architecture.

PHP architecture

  • Architecture i386/i686 = 32 bits
  • Architecture x86_64 = 64 bits

Below are listed the files required for Oracle drivers to be enabled.

Required files:

x86_64

  • Oracle Instant Client - Basic Package 12.1.0.2(x86_64): Click here
  • Oracle Instant Client - Devel Package 12.1.0.2(x86_64): Click here

i386/i686

  • Oracle Instant Client - Basic Package 12.1.0.2(i386/i686): Click here
  • Oracle Instant Client - Devel Package 12.1.0.2(i386/i686): Click here

IMPORTANT: PHP 7.3 is compatible with Oracle Instant Client 11.2 or higher.
To download Oracle Instant Client lower than version 19.5.0.0, it is necessary to have an Oracle Account.

Other Files

  • Oracle Instant Client 12.2.0 ou Higher: Click here

Compatibility Table

Driver Oracle database version
Oracle ODBC
Instant Client Oracle database version
12.1.0.2

Configuring Amazon RDS Oracle ODBC on Linux

It is necessary to enable the Oracle extension in PHP and configure instant_client to make the connection. Follow the steps outlined below to enable the connection drivers.

1 - Install the packages below:

UBUNTU\DEBIAN CENTOS\RHEL
sudo apt-get update sudo yum update
sudo apt-get install libaio1 sudo yum install libaio-devel
sudo apt-get install libncurses5 sudo yum install libaio
sudo apt-get install alien sudo yum install glibc
sudo apt-get install gcc-multilib g++-multilib sudo yum install compat-libstdc++-33
sudo apt-get install libpam0g sudo yum install glibc-devel
sudo apt-get install unixodbc-dev unixodbc sudo yum install libstdc++
  sudo yum install libstdc++
  sudo yum install pam
  sudo yum install ncurses-devel
  sudo yum install unixODBC

2 - Convert and install the previously downloaded Instant Client Basic packages on your Linux system:

UBUNTU\DEBIAN CENTOS\RHEL
sudo alien oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm sudo yum install oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
sudo alien oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm sudo yum install oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm
sudo dpkg -i oracle-instantclient12.1-basic_12.1.0.2.0-2_amd64.deb  
sudo dpkg -i oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb  

3 - Copy the oci8.so extension to the PHP extensions directory:

EX: sudo cp oci8.so /usr/lib/php/20180731

Access the info.php file and look for the extension_dir line. It will tell you the exact path to the directory responsible for PHP extensions.

Path to the PHP extensions directory

4 - Edit the php.ini file and declare the Oracle extension at the end of the file.

UBUNTU\DEBIAN CENTOS\RHEL
/etc/php/7.3/apache2/php.ini /etc/php.ini

EX: extension=oci8.so

Inserting extension in php.ini

5 - Edit the environment variable file and declare the variable responsible for identifying the Oracle library:

Enter the variable LD_LIBRARY_PATH and the path to the library in the file responsible for your system’s environment variables. Check the path below according to your operating system:

WARNING: The path to the library may depend on your installation, by default the path is this: /usr/lib/oracle/12.1/client64/lib/.

UBUNTU\DEBIAN CENTOS\RHEL
sudo nano /etc/apache2/envvars sudo nano /etc/sysconfig/httpd
  • Add this variable at the end of the file with the following syntax:

export LD_LIBRARY_PATH=/usr/lib/oracle/12.1/client64/lib/

E.g.

Adding the Oracle Client environment variable

NOTE: If you are using CentOS/RHEL, it is not necessary to use ‘export’ before the variable.

6 - Restart the Scriptcase apache service for the changes to take effect. Use the commands below according to your operating system.

UBUNTU\DEBIAN CENTOS\RHEL
sudo service apache2 restart sudo systemctl restart httpd

Connection to Scriptcase

Doubts or Connection Problems?

Contact our Support Team in case of connection problems or questions regarding this database.