SwapSQL

MySQL to Neon converter

Move your MySQL data to Neon — convert the dump or migrate live.

Upload a dump file

Free

Export with mysqldump, upload the .sql file, and download PostgreSQL-ready SQL to import into Neon. Powered by a real engine — AUTO_INCREMENT, ENUMs, zero dates all handled.

// converter

uploads deleted on completion real engine, not regex free account, e-mail only

Live MySQL-to-Neon

Free up to 5 MB

No dump file needed. Enter your MySQL connection details and paste your Neon connection string — SwapSQL reads from one and writes to the other.

  • Paste your Neon connection string as the target
  • Test both connections before starting
  • Tables, data, indexes and keys transferred directly
  • Full report when the migration completes
  • Import into any Neon branch — main, dev, or a fresh one
Open live migration

Compare plans — or start free, upgrade when you need it.

Step 1 — Export your MySQL database

mysqldump --single-transaction --no-tablespaces \
  -h HOST -u USER -p DATABASE_NAME > dump.sql

# compress for faster upload:
gzip dump.sql

Need more detail (Docker, phpMyAdmin, remote servers)? See the full mysqldump guide.

Step 2 — Convert it

Drop dump.sql (or dump.sql.gz) into the box above. The dump is loaded into an isolated MySQL 8.0 sandbox, migrated to PostgreSQL 16 table-by-table, and exported with pg_dump — so the file you download is guaranteed-valid PostgreSQL, ready for Neon.

Step 3 — Import into Neon

Copy your connection string from the Neon console under Connection Details. Select the branch you want to import into.

psql "postgresql://[user]:[password]@[endpoint-id].us-east-2.aws.neon.tech/[dbname]?sslmode=require" \
  -f dump.postgresql.sql

What converts automatically

After importing: Neon-specific tips

// faq

Frequently asked questions

How do I migrate a MySQL database to Neon?

Export your MySQL database with mysqldump, upload it above to convert it to PostgreSQL, then import the result into Neon with psql using your Neon connection string.

Does AUTO_INCREMENT convert correctly for Neon?

Yes. AUTO_INCREMENT columns become PostgreSQL identity columns (or sequences), and the counter continues from your highest existing id. Neon handles them natively — it's standard PostgreSQL.

What happens to ENUM columns?

MySQL ENUMs become native PostgreSQL ENUM types, which Neon supports fully. The same labels and constraints carry over.

Can I import into a specific Neon branch?

Yes. Each Neon branch has its own connection string. Use the connection string for whichever branch you want to import into — the main branch, a development branch, or a new branch created for the migration.

What about zero dates like 0000-00-00?

PostgreSQL (and therefore Neon) rejects MySQL's zero dates, so they are converted to NULL. Any affected rows are counted in the conversion report.

Can I migrate directly without a dump file?

Yes — live migration is included on the free plan for source databases up to 5 MB (two per day). Enter your MySQL source connection and your Neon connection string as the target, and SwapSQL transfers everything directly. The Pro plan removes the size and daily limits.