Oracle to PostgreSQL Migration with Python
easyo2p
is a Python package to migrate an Oracle database schema to PostgreSQL.
Containing functionality to connect to both source and target databases,
easyo2p
eases customised migrations using its functionality within the Python environment.
easyo2p
is written and tested on Python 3.10,
using cx_Oracle and psycopg2 database connections modules.
The package can be found on GitHub and PyPI, so naturally it can be installed with pip
pip install easyo2p
It has been tested with various Oracle versions from version 12c, and PostgreSQL from 14, but is expected to work with a
easyo2p
is for you if:
- You want to copy a schema, or multiple schemas, in Oracle to PostgreSQL.
- You need no or little automated conversion of PL/SQL functions, procedures or packages.
- You are familiar enough with Python to add any required customisations.
The package can connect to both the Oracle and PostgreSQL servers.
From a specified schema, it will create the objects in PostgreSQL and migrate the data.
easyo2p
also has an option to create text files,
so that the migration can be backed-up or rerun later.
To ease continuity between Oracle and PostgreSQL development, and to allow our PL/SQL code to run in both Oracle and PostgreSQL, some additional objects are created to mimic Oracle functionality in PostgreSQL.
The tutorial covers examples of the easyo2p
functionality,
so that it can then be applied for specific migrations.
This software is released under the MIT licence