This guide walks you through migrating data from PostgreSQL to SQL Azure in a few simple steps using ESF Database Migration Toolkit. Simplify complex migration tasks and save valuable time with our streamlined approach.
PostgreSQL vs. SQL Azure:
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.
Microsoft SQL Azure, also known as Azure SQL Database, is a fully managed relational database service provided by Microsoft. It offers scalable and high-performance SQL database capabilities in the cloud, with built-in high availability, automated backups, and robust security features. Designed to handle both small and large-scale applications, Azure SQL Database simplifies database management tasks, allowing developers to focus on building applications without worrying about underlying infrastructure. It supports various deployment options, including single databases, elastic pools, and managed instances, catering to diverse business needs.
32-bit Windows application for ESF Database Migration Toolkit 12.2.08 (2025-07-11). (md5: bd34cb7f73c88c6d0c7a44069ad756d6)
System Supported:
Windows 7 or higher.
PostgreSQL 7.x or higher.
SQL Azure.
Step by Step Wizard:
Configure PostgreSQL Data Source
In the "Choose a Data Source" dialog:
Select "PostgreSQL"
Enter server connection details:
Server name: localhost (default)
Port: 5432 (default)
Provide authentication credentials:
Username: postgres (default)
Associated password
Database selection:
Click the Refresh Database button
Select target database from available options
Schema selection:
Click the Refresh Schema button
Choose desired schema (public schema is default)
Fig. 1: PostgreSQL data source configuration
Configure SQL Azure Data Destination
Prerequisite:
Enable access in Azure server's "Firewalls and virtual networks" page
Add your client IP to the firewall rules
In the "Choose a Destination" dialog:
Select "SQL Azure"
Enter server details:
Server name: e.g., esf.database.windows.net
Port: 1433 (default)
Provide authentication credentials:
Username and password
Database selection:
Click Refresh Database to load databases
Select target database
Schema selection:
Click Refresh Schema to load schemas
Choose existing schema (dbo schema is default)
Fig. 2: SQL Azure data 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 PostgreSQL to SQL Azure.
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.