pgloader
pgloader.io
What it is
pgloader migrates database and flat-file data into PostgreSQL using schema translation, casting rules, and parallel loading. Listed sources are MySQL, MariaDB, MS SQL Server, SQLite, CSV, fixed-width files, and DBF; Oracle support is not built yet. Its pipeline fetches the source catalog, prepares the PostgreSQL target, runs parallel COPY, creates indexes in parallel, and completes the schema. MySQL handling includes enum translation, converting TINYINT(1) to boolean, zero-date handling, and looking up credentials in .my.cnf. The MS SQL Server path includes Azure AD authentication, sequence migration, and multi-column foreign keys. For file imports, rejected rows can be separated after a failed COPY transaction while accepted rows continue loading. Custom casting rules go in a .load file. Version 3 in Common Lisp is the stable packaged release; version 4 is a pre-release JAR requiring Java 21 or later. The free Community tier has best-effort GitHub support. Paid support starts at €100/mo, with higher tiers offering priority handling, SLA-triaged patches, roadmap input, or issue-based support. It is self-hosted on Linux.
Spec sheet
- Purpose
- pgloader migrates data into PostgreSQL from databases and flat files using schema translation, casting rules, and parallel loading.Read 2 Oct 2026 · pgloader.io
- Security
- The site mentions Azure AD authentication for MS SQL Server but does not state security certifications or compliance attestations.Read 2 Oct 2026 · pgloader.io
- Support
- The free Community tier receives best-effort help through GitHub, while paid tiers offer priority handling and related support benefits.Read 2 Oct 2026 · pgloader.io
- Founded
- 2005Read 28 Sep 2026 · pgloader.io
- Maker
- The maker identifies Dimitri Fontaine as pgloader’s author and maintainer since 2005.Read 2 Oct 2026 · pgloader.io
- Custom rules
- Custom casting rules can be specified in a .load file.Read 2 Oct 2026 · pgloader.io
- File imports
- For file sources, failed COPY transactions are retried by separating rejected rows while allowing accepted rows to load.Read 2 Oct 2026 · pgloader.io
- Limits
- The roadmap says pgloader works from catalog representations and does not currently parse SQL object definitions; view definitions and stored procedures would require SQL translation support.Read 2 Oct 2026 · pgloader.io
- Migration sources
- The site lists MySQL, MariaDB, MS SQL Server, SQLite, CSV, fixed-width, and DBF sources; Oracle support is not built yet.Read 2 Oct 2026 · pgloader.io
- MySQL features
- The MySQL path includes enum-to-type translation, TINYINT(1)-to-boolean conversion, zero-date handling, and .my.cnf credential lookup.Read 2 Oct 2026 · pgloader.io
- Pipeline
- Its five stages are catalog fetch, target preparation, parallel COPY, parallel index creation, and schema completion.Read 2 Oct 2026 · pgloader.io
- Runtime
- Version 4 is distributed as a self-contained JAR and requires Java 21 or later.Read 2 Oct 2026 · pgloader.io
- SQL Server features
- The MS SQL Server path includes Azure AD authentication, sequence migration, and multi-column foreign key support.Read 2 Oct 2026 · pgloader.io
- Version status
- The site describes v4 as a pre-release and v3 in Common Lisp as the stable, packaged release.Read 2 Oct 2026 · pgloader.io
Plans and prices
Strong points and limits
Strong points
- Loads from databases and several flat-file formats.
- Runs COPY and index creation in parallel.
- Custom casting rules can be specified in a .load file.
- File imports can continue after rejected rows are separated.
- Free Community tier with GitHub help.
Limits
- Oracle support is not built yet.
- Continuous replication is not provided.
- Version 4 is a pre-release.
- The free tier provides best-effort support only.
Who it suits
pgloader suits teams moving supported database or file sources into PostgreSQL, including those needing schema casting or parallel loading. The free Community tier is described for evaluation or non-critical use; paid tiers offer additional support benefits.
Verdict
pgloader provides a defined migration pipeline and source-specific handling for MySQL, SQL Server, and files. Check the release status and support tier that fit your use before choosing it.
Where Specifiction places it
- Data Migration Tools#8 of 257.8
- Cloud Migration Tools#13 of 327.8