Use the following tools based on your migration complexity and downtime to migrate data from PostgreSQL to AlloyDB Omni:
Migration type
Tool
Simple migration with sufficient downtime
pg_dump to backup the existing database and pg_restore to restore the backup to the new database.
Complex migration with sufficient downtime
pgloader to stream data from the source to the destination.
Complex migration with minimal downtime
pglogical to replicate data from the source to the destination.
Oracle to AlloyDB Omni
If you have sufficient downtime to move the volume of data in Oracle and convert all Oracle resident application logic to PostgreSQL, use Ora2Pg for schema conversion, data movement, and code conversion.
If you have minimal downtime for the migration, use the following tools:
To migrate
Use
Code and schema
Google Cloud Database Migration Service to migrate the schema and code Ora2Pg for schema conversion, data movement, and code conversion Change Data Capture (CDC) tool as required to identify and captures data from, Oracle relational tables, and makes the change data available for use by applications.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-25 UTC."],[[["\u003cp\u003eThis page guides users through migrating data from PostgreSQL or Oracle to AlloyDB Omni.\u003c/p\u003e\n"],["\u003cp\u003eFor PostgreSQL migration, tools like \u003ccode\u003epg_dump\u003c/code\u003e, \u003ccode\u003epg_restore\u003c/code\u003e, \u003ccode\u003epgloader\u003c/code\u003e, and \u003ccode\u003epglogical\u003c/code\u003e are recommended based on downtime and complexity.\u003c/p\u003e\n"],["\u003cp\u003eFor Oracle migration with sufficient downtime, \u003ccode\u003eOra2Pg\u003c/code\u003e handles schema conversion, data movement, and code conversion.\u003c/p\u003e\n"],["\u003cp\u003eFor Oracle migration with minimal downtime, use Google Cloud Database Migration Service or \u003ccode\u003eOra2Pg\u003c/code\u003e for code and schema, and \u003ccode\u003eEqualum\u003c/code\u003e for data streaming.\u003c/p\u003e\n"],["\u003cp\u003eAlloyDB Omni usage is subject to the user's existing agreement with Google governing Google Cloud offerings, and if the user doesn't have a google account or an agreement, they should not proceed with downloading the software.\u003c/p\u003e\n"]]],[],null,["# Migrate data to AlloyDB Omni\n\nSelect a documentation version: 15.7.0keyboard_arrow_down\n\n- [Current (16.8.0)](/alloydb/omni/current/docs/migrate-data)\n- [16.8.0](/alloydb/omni/16.8.0/docs/migrate-data)\n- [16.3.0](/alloydb/omni/16.3.0/docs/migrate-data)\n- [15.12.0](/alloydb/omni/15.12.0/docs/migrate-data)\n- [15.7.1](/alloydb/omni/15.7.1/docs/migrate-data)\n- [15.7.0](/alloydb/omni/15.7.0/docs/migrate-data)\n\n\u003cbr /\u003e\n\n| **Note:** Your use of AlloyDB Omni is subject to the agreement between you and Google that governs Google Cloud offerings. If you do not have a Google Cloud account, or have not otherwise entered into an agreement with Google that governs Google Cloud offerings, please do not proceed or download this software until you have done so. To create a Google Cloud account, see [the Google Cloud homepage](/docs/get-started).\n\n\u003cbr /\u003e\n\nThis page outlines the process to migrate data from PostgreSQL or Oracle to\nAlloyDB Omni.\n\n- [PostgreSQL to AlloyDB Omni](#migrate-postgres)\n\n- [Oracle to AlloyDB Omni](#migrate-oracle)\n\nPostgreSQL to AlloyDB Omni\n--------------------------\n\nUse the following tools based on your migration complexity and downtime to migrate data from PostgreSQL to AlloyDB Omni:\n\nOracle to AlloyDB Omni\n----------------------\n\nIf you have sufficient downtime to move the volume of data in Oracle and convert all Oracle resident application logic to PostgreSQL, use [Ora2Pg](https://ora2pg.darold.net/) for schema conversion, data movement, and code conversion.\n\nIf you have minimal downtime for the migration, use the following tools:"]]