MySQL
Access

MySQL to Access Converter

Selected MySQL tables in an Access file for reporting or a local copy, exported once or kept current by a scheduled job.

Version
5.7.0
Release Date
Nov. 4, 2026
Size
125.6 MB
Platform
Windows 10 or later

Rather not run it yourself?

Let us do the migration →

Turn MySQL tables into a Microsoft Access file for reporting, a local copy, or an Access front end that still needs its data. DBConvert creates the .accdb or .mdb file and its tables, then copies the rows from the server.

  • Reads MySQL and MariaDB servers, on your network or in the cloud.
  • Writes a new .accdb file, or an .mdb in the Access 2000 format, with an optional database password.
  • Runs on Windows as a desktop application.
  • The same download converts Access into MySQL.

Choose what goes into the Access file

An Access file is capped at 2 GB by Microsoft, so a MySQL export usually takes part of the database rather than all of it.

Select the dataset

Pick the tables and add a per-table row filter when only recent or relevant rows belong in Access.

Review the mapping

See the Access type proposed for every column and change it before the file is created.

Keep the setup

Save the connection, tables, and options as a job. Rerun it from the application, or from Task Scheduler with --run-job.

Export once, or keep the Access copy current

Both modes are part of the same DBConvert application.

One-time export

Create a fresh Access file for a report, an audit snapshot, or a colleague who works in Access.

Synchronization

A synchronization job carries MySQL inserts, updates, and deletes into the existing Access file, matching rows by primary key. A table without one is not changed in place. See how synchronization works.

How MySQL types map to Access

Access has fewer types than MySQL. These are the defaults, and where a value needs a decision.

In MySQL DBConvert default in Access What needs attention
DECIMAL(p,s), BIGINT Decimal with the same precision and scale. BIGINT becomes Decimal(19,0). Values stay exact.
AUTO_INCREMENT keys An AutoNumber (Long Integer), including INT UNSIGNED and BIGINT keys. AutoNumber stops at 2,147,483,647. A larger id is refused, and the error names the table.
TINYINT to INT, FLOAT, DOUBLE TINYINT UNSIGNED becomes Byte, TINYINT and SMALLINT Integer, MEDIUMINT and INT Long Integer. FLOAT becomes Single, DOUBLE Double. TINYINT(1) arrives as a number, not Yes/No. Change it per column if the Access form expects a check box.
VARCHAR, TEXT, ENUM, JSON Up to 255 characters, Short Text at the same length. Longer columns, TEXT, LONGTEXT, and JSON become Long Text. ENUM becomes Short Text. Long Text keeps the whole value, with no 64K cut. Empty strings and NULLs stay apart.
DATE, DATETIME, TIMESTAMP, TIME Date/Time. A TIME value is stored on 30 December 1899, the date Access uses for a time of day. Dates from year 1000 to 9999 arrive as they are. Time zones are not stored.
BLOB, VARBINARY(n) OLE Object, and Binary(n). Binary data arrives byte for byte. Check how the Access application expects to read it.

Views, routines, and triggers stay in MySQL

DBConvert moves tables, data, indexes, and relationships. MySQL views, stored procedures, triggers, and events are not converted into Access queries or VBA.

Writing Access files needs the 64-bit Microsoft Access Database Engine, a free Microsoft download that the DBConvert installer does not include. Without it, the connection step links to it.

Supported versions and services

MySQL

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

Access

  • MS Access .accdb, and .mdb in Access 2000 format or later
  • Database password; the 64-bit Microsoft Access Database Engine is required

How to migrate MySQL to Access

1

Setup: connect MySQL and Access

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 Access destination side by side, and the job name

Sync keeps an existing Access 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 Access: how changes are detected and the direction

MySQL source

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

Access target

Choose a path for the new .accdb or .mdb file, with an optional database password. Microsoft caps the file at 2 GB; filter the export if the source is larger.

2

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

Pick the tables, then open one: each MySQL column shows the Access 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 Access: the table list and one table's columns with their Access 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 Access 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 Access

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

Windows Windows 10 or later · 125.6 MB