This guide walks you through migrating data from MariaDB to PostgreSQL in a few simple steps using ESF Database Migration Toolkit. Simplify complex migration tasks and save valuable time with our streamlined approach.
MariaDB vs. PostgreSQL:
MariaDB is a powerful open-source relational database management system (RDBMS) that originated as a fork of MySQL. It was developed by the original creators of MySQL in response to concerns over its acquisition by Oracle Corporation. MariaDB retains compatibility with MySQL while offering additional features, improved performance, and enhanced security. It is widely used in various applications ranging from small-scale web databases to large-scale enterprise systems, thanks to its flexibility, scalability, and active community support.
PostgreSQL is a powerful, open-source relational database management system known for its reliability, robust feature set, and extensibility. It offers support for a wide range of data types, indexing techniques, and advanced features such as full-text search, JSON support, and geospatial data processing. With a strong emphasis on standards compliance and ACID compliance, PostgreSQL is widely used across various industries for handling complex data management tasks, from small-scale projects to large-scale enterprise applications. Its active community, frequent updates, and ecosystem of extensions contribute to its popularity and ongoing development.
32-bit Windows application for ESF Database Migration Toolkit 12.2.08 (2025-07-11). (md5: bd34cb7f73c88c6d0c7a44069ad756d6)
System Supported:
Windows 7 or higher.
MariaDB 5.1 or higher.
PostgreSQL 7.x or higher.
Step by Step Wizard:
Configure MariaDB Data Source
In the "Choose a Data Source" dialog:
Select "MariaDB"
Enter server details:
Server name: localhost (default)
Port: 3306 (default)
Provide authentication:
Username: root (default)
Associated password
Database selection:
Click the Refresh button to load available databases
Select target database from the list
Fig. 1: MariaDB data source configuration
Configure PostgreSQL Destination
In the "Choose a Destination" dialog:
Select "PostgreSQL"
Enter server connection details:
Server name: localhost (default)
Port: 5432 (default)
Provide authentication credentials:
Username: postgres (default)
Associated password
Configure character encoding:
Select database character set (default: UTF8)
Required for non-ASCII characters (e.g., German, French, Japanese)
Database selection/creation:
Select existing database or enter new database name
Click the Refresh button to list available databases
New databases are automatically created during migration
Schema configuration:
Enter or select target schema name (default: public)
Click the Refresh Schema button to list available schemas
Fig. 2: PostgreSQL destination configuration
In "Select Source Table(s) & View(s)" Dialog
Select migration objects: Choose tables or views to include in the migration. Fig. 3: Select tables and views
Modify table structure: Click the ellipsis (...) button to access table options and schema adjustments. Fig. 4: Do transform
Configure field mapping: In the Field Mapping options:
Customize destination fields (name, data type, default value, comments)
Select data transfer method:
Overwrite Table (replace existing data)
Empty Data (truncate before insert)
Append Data (add to existing data)
Skip Table (exclude from transfer)
Apply data filters before transfer
Execution Dialog
Start migration: Click "Submit" to initiate automated data transfer from MariaDB to PostgreSQL.
Fig. 5: Execute migration
Monitor progress: Click "Browse Log" for real-time migration tracking, including issue resolution details.
Save configuration: Click "Save as job" to store settings for:
Quick reloads of migration jobs
Command-line execution (use: dmtc.exe --help for parameter options)
Finished!
After migration completes, the toolkit generates a comprehensive report for verifying migration accuracy. You can monitor progress as the automated process runs efficiently. For any questions or feedback, contact us – our team is ready to assist.