IvorySQL is advanced, fully featured, open source Oracle compatible PostgreSQL with a firm commitment to always remain 100% compatible and a Drop-in replacement of the latest PostgreSQL. IvorySQL adds a “compatible_db” toggle switch to switch between Oracle and PostgreSQL compatibility modes.
One of the highlights of IvorySQL is PL/iSQL procedural language that supports oracle’s PL/SQL syntax and Oracle style Packages.
IvorySQL has imported and enhanced the Orafce extension to add support
for numerous Oracle compatibility features including built-in PACKAGES, data types, and conversion functions
The IvorySQL project is released under the Apache 2 license and encourages all types of contributions. For IvorySQL community no contribution is too small, and we want to thank all our community contributors.
We are committed to following the principles of the open source way
We are committed to abiding by the principles of open-source ways and we strongly believe in building a healthy and inclusive community. We maintain that good ideas can come from anywhere, and the best ideas should win. Only by including diverse perspectives, we can reach the best decision. While the first version of IvorySQL is mainly focused on Oracle Compatibility features, going forward the future road map and feature set will be determined by the community in an open-source way.
Compiling from source
IvorySQL can be built on Linux, OSX, Unix and Windows platforms. This section describes the step to compile the source on the Linux based systems.
Getting the source
Clone the repository with either of the following command:
git clone https://github.com/IvorySQL/IvorySQL.git git clone git@github.com:IvorySQL/IvorySQL.git
Requirements
To compile the IvorySQL from the source code, you have to ensure that prerequisite packages are available on the system.
-
Required Packages The following software packages are required for
building IvorySQL:- make – GNU make version 3.80 or newer
- gcc – ISO/ANSI C compiler (at least C99-compliant). Recent versions of
GCC are recommended. - libreadline – The GNU Readline library is used by default.
- zlib – zlib compression library is used by default.
- Flex – (Flex 2.5.31 or later)
- Bison – (Bison 1.875 or later)
-
Optional Packages The following packages are optional. They are not
required in the default configuration, but they are needed when certain build
options are enabled.- libperl – (Perl 5.8.3 or later) To build the server programming language
PL/Perl. Perl library installation with the header files. libperl library
must be a shared library - libpython – (Python 2.6 or later, Python 3.1 or later) To build the
PL/Python server programming language. Python installation with the header
files and the distutils module. libpython library must be a shared library. - Tcl – (Tcl 8.4 or later) To build the PL/Tcl procedural language.
- Gettext API – (Tcl 8.4 or later) To enable Native Language Support
(NLS), to display a program’s messages in a language other than English. - OpenSSL – (1.0.1 or later) To support encrypted client connections.
- LZ4 – To support compression of data.
- libperl – (Perl 5.8.3 or later) To build the server programming language
Preparing System
Following are the minimal packages needed to build from source: