Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have an .mdb file that a coworker wants me use to convert to tables on our MySQL server. I'm familiar with MySQL, but have very little experience with Access (nor do I really want to learn).

Any suggestions on where to find out the information I need?

share|improve this question
which version of mysql are you running? It matters because most version of mysql are missing features present in Access. – Zoredache Nov 4 '09 at 21:19
I don't know if I'd call those...things..."features". – Satanicpuppy Nov 4 '09 at 22:25
If it simplifies the user experience and increases their productivity, its a feature. – sparks Nov 4 '09 at 22:31
"simplifies the user experience" -- those are UI features. MySQL is a server. – Jason S Nov 4 '09 at 22:54
Access is perfectly fine for people who really only need a little more than Excel, or people who can't code. Even in those cases, there are a lot of benefits in just using access as a front end, and linking that front end back to a real database. Access performance sucks. – Satanicpuppy Nov 5 '09 at 1:51

MS-Access works very well with ODBC to MySQL.

If you have a DSN connection set up, you can import all the tables using the import from external data source. The exact menu commands vary from Access 2003 to Access 2007.

Or you can uses linked tables, which give you a live connection to MySQL tables.

In both cases you'd preserve the meta-data (column types).

I don't recommend using comma separated values or fixed width. You will waste a lot of time re-establishing the meta data (what fields are text, which are dates, etc)

share|improve this answer
interesting... so you'd use MS Access's GUI features but move the data to MySQL? sounds like a very promising approach. We'll try it... thanks! – Jason S Nov 4 '09 at 22:54

If your looking to convert JUST the tables, then I would suggest you export them as CSVs and then import them to MySQL from the CSVs.

share|improve this answer

This is another option - Makes it pretty painless. It will also convert / transfer not just the tables but the records as well.

share|improve this answer

There are a number of tools that will handle Access->MySQL transfers. I like Navicat, but you can download the free MySQL migration toolkit and it works fine with Access.

Access to MySQL is pretty much painless.

share|improve this answer

You can use the converter from the mysqlguitools package to import the data directly to mysql

share|improve this answer

I am doing the migration from a MDB database to MySQL doing some transformations and data validation on the way and the best tool for me right now is Pentaho Kettle (Community Edition). It's free and you can load the MDB database as input, browse the table, make transformations on the data and output as CSV, SQL, TXT, ...

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.