Oracle DB MacOS

From DreamFactory
Jump to: navigation, search

This module will allow you to access Oracle databases. These instructions assumes you are installing with the latest Oracle instant client (12.1) which is backwards compatible to Oracle 10. If you need compatibility back to Oracle 9, use the 11.2 instant client files from Oracle, and adjust the filenames in the instructions accordingly.

  1. Configure Pear (if not previously done)
    • <source lang="bash">$ touch $(brew --prefix php70)/lib/php/.lock && chmod 0644 $(brew --prefix php70)/lib/php/.lock</source>
  2. Get the Instant Client Files
    • Download the basic and sdk instant client files for Linux x86-64, version 12.1 from this link: Oracle Instant Client Downloads
    • Filenames:
      • instantclient-basic-macos.x64-12.1.0.2.0.zip
      • instantclient-sdk-macos.x64-12.1.0.2.0.zip
  3. Copy the instant client files to your Downloads directory (~/Downloads) on the server
  4. Unzip and move the files to /usr/local/include/instantclient_12_1
    • <source lang="bash">$ cd ~/Downloads</source>
    • <source lang="bash">$ unzip instantclient-basic-macos.x64-12.1.0.2.0.zip</source>
    • <source lang="bash">$ unzip instantclient-sdk-macos.x64-12.1.0.2.0.zip</source>
    • <source lang="bash">$ mv instantclient_12_1 /usr/local/include/</source>
  5. Create a symlink for the .so in the instantclient directory
    • <source lang="bash">$ ln -s /usr/local/include/instantclient_12_1/libclntsh.dylib.12.1 /usr/local/include/instantclient_12_1/libclntsh.dylib</source>
  6. Install the oci8 driver using PECL
    • <source lang="bash">$ sudo pecl install oci8</source>
    • When asked for the ORACLE_HOME directory during install type instantclient,/usr/local/include/instantclient_12_1
    • You should see a message indicating that the oci8.so was successfully installed to the extensions directory and enabled.
  7. Verify the module is successfully working with PHP
    • <source lang="bash">$ php -m | grep oci8</source>