Oracle to PostgreSQL Migration
KloudLearn has an experienced team with expert knowledge in migrating out of Oracle to Postgres or other compatible databases.
Just a few numbers
Database migration is never easy. Let us help you with our proven tools and processes.
Compatibility with PostgreSQL
Lines of db code, ported successfully.
Unique Oracle specific objects migrated successfully.
Components & features
Oracle to Postgres MigrationKloudlearn offers Oracle to Postgres migrations to help enterprises save on licensing on the cloud, as well as ensuring that their critical managed databasese don't lose support.
Our ApproachWe start by gathering enough information that helps us get started. This includes
- What is the technology in which the application is running
- What are the performance needs of the Oracle cluster
- What are the HA and failover needs of the db or cluster
- What are the backup policies currently in place
- What kind of uptimes are required
- An automated performance snapshot of the database as well as the application
Extraction of DDL and Dependencies
The next step is in extracting the DDL and DML including all objects and dependencies. For example in several cases stored procedures call external dependencies such as Java.
Identifying a list of all incompatible statememts and database objectsThe next step is to identify all incompatible objects and make a list of the same. There are several tools that allow such checks including Enterprise DB's Migration Toolkit.
The next step is convert data types and fundamental database objectsDuring this step, we convert all basic database objects as well as data types to be compatible with Oracle. Extreme care is taken to ensure backward compatibility, but database schema is modified in case full backward compatibility is not possible.
Identifying and migrating exceptionsThere are several exception use cases that will occur as PostgresSQL doesn't support several things that Oracle supports out of the box including:
- External function calls to Programs in Java. This can be achieved by using a third party library as suggested by Postgresql.org
- Special events like ONLOGIN
- Package specificiations definitions - this is typically converted as full functions (void of just the definition as PostgreSQL does not support such a feature).
- Conditional compilation flags like $$PLSQL_UNIT.$$PLSQL_UNIT is an oracle specific conditional compiling flag.
- User defined types - which is not supported in a straight forward manner by PostgreSQL
- LOB functions
Migration of large data volumesFor larger data volumes—more than 1 TB, for example—a purely online migration of data might be too time consuming or take too much of your available bandwidth. In this situation, you should use an export, reload, and sync approach. In this approach, you export your largest tables. Then, you either compress and push them to either through storage services or physical transport (cloud provider provide offline data loading options).
Migrating the codeThe most intensive effort during an Oracle-to-PostgreSQL migration is usually porting the code to work with PostgreSQL. This applies to the stored procedures, packages, and functions within the database and the application code that reads and writes to the database.
Get in touchWe'd be glad to share case studies and more information on migration from Oracle to PostgreSQL.
Who do we do it for?