MySQL
SQLite

MySQL to SQLite Converter

Move MySQL or MariaDB data into a single-file SQLite database for embedded use, local snapshots, QA fixtures, or offline analysis. Review object selection and type mapping before generating the SQLite file.

Version
5.4.0
Release Date
Oct. 25, 2026
Size
22.7 MB
Platform
Windows 10 or later

Rather not run it yourself?

Let us do the migration →

Create a portable SQLite database from a MySQL server without manually editing dump files. DBConvert connects to MySQL, lets you select objects, type mappings and filters, then writes a ready-to-use SQLite file.

Runs on Windows as a desktop application: the source is a live MySQL connection, not a dump file, and nothing is uploaded to a web service.

Two modes, one download

Export once, or keep the SQLite file in step with MySQL

You choose the mode when you set up the job.

One-time SQLite export

Create a portable database file for QA fixtures, offline analysis, demos, desktop applications, or embedded deployments.

Repeat synchronization

The job keeps the connection, selected tables, filters, and output path. Run it on a schedule to keep the SQLite file in step with MySQL - in one direction or both - instead of rebuilding it by hand.

What needs attention

How DBConvert handles the MySQL → SQLite differences

MySQL is server-strict; SQLite is a permissive single-file database.

Type behavior

MySQL type SQLite default
DATE / DATETIME / TIMESTAMP / TIMEkept as declared
CHAR / VARCHAR / DECIMAL / FLOATkept as declared
TEXT / LONGTEXTTEXT
BLOB / LONGBLOBBLOB
TINYINT / YEARSMALLINT
MEDIUMINTINT
DOUBLEFLOAT
ENUM / SETNVARCHAR(n), sized to the longest allowed value
JSONLONGTEXT

The declared type is carried across wherever SQLite tolerates the name, and rewritten only for types SQLite does not have. SQLite treats the declaration as an affinity hint rather than a hard constraint.

Schema conversion

Generates SQLite-compatible DDL from MySQL table definitions - indexes, primary keys and foreign keys come across; engine-specific clauses (ENGINE=InnoDB, ROW_FORMAT, KEY_BLOCK_SIZE) are dropped because SQLite has no equivalent.

Identity and AUTO_INCREMENT

Maps MySQL AUTO_INCREMENT columns to SQLite INTEGER PRIMARY KEY AUTOINCREMENT on the PK column - the SQLite rowid mechanism takes over key generation natively on the target side.

File output

Writes a single self-contained SQLite database file (.sqlite, .sqlite3, .db or .db3) at the path you pick on Setup - ready for application packaging, mobile bundling, or distribution without a server runtime. Whether an existing file is replaced or added to is a job option.

Stored routines, events, and user permissions - out of scope

DBConvert's migration covers tables with their fields, types and indexes, and foreign keys between them. MySQL stored procedures, functions, triggers, events, and GRANT-based user permissions stay in the source database and are rewritten manually in SQLite's trigger language - or moved into application code, since SQLite has no stored-procedure layer and no server-side user model.

You see every column before a row moves

The review lists each source column and the type it is about to get in SQLite. Here the types keep their MySQL names and lengths: INT, VARCHAR(70), DATETIME. Change any of them before the run.

DBConvert type-mapping review for a MySQL to SQLite conversion

Want to browse and query the MySQL source before you export it? DBConvert Streams includes a database explorer for MySQL and PostgreSQL →

Supported versions and services

MySQL

  • MySQL 5.x, 8.x; MariaDB; Percona Server
  • Amazon RDS / Aurora MySQL, Azure Database for MySQL, Google Cloud SQL

SQLite

  • SQLite 3.0 and later

How to migrate MySQL to SQLite

1

Setup: connect MySQL and SQLite

Pick Convert or Sync, then choose the source and destination connections side by side on one screen. A connection is saved once and reused by every job.

The Setup step in DBConvert: the mode, the MySQL source and SQLite destination side by side, and the job name

Sync keeps an existing SQLite database up to date with MySQL: each run carries only the inserts, updates and deletes since the last one.

The Setup step in Sync mode for MySQL to SQLite: how changes are detected and the direction

MySQL source

Use the MySQL connection guide for local MySQL, MariaDB / Percona, RDS / Aurora, Google Cloud SQL, or Azure Database for MySQL.

SQLite target file

The SQLite database file can be .sqlite, .sqlite3, .db or .db3; pick it in the connection dialog.

2

Tables & mapping: see every SQLite type before a row moves

Pick the tables, then open one: each MySQL column shows the SQLite type it becomes. Change a type or a name in place; the line at the bottom names anything that would fail.

Tables and mapping for MySQL to SQLite: the table list and one table's columns with their SQLite types
3

Execution: start it, and the job is saved

Review what the run will do, start it, and read the log as it goes. The job stays in the list to run again or put on a schedule.

A finished MySQL to SQLite conversion: the summary and the operation log

Every option, in the guide

Naming rules, table options, row filters, scheduling and the command line work the same for every database pair, so they live in one place.

Move MySQL data into SQLite

Download the current build and run the first job against your own database.

Windows Windows 10 or later · 22.7 MB