I started doing exactly this just today. I originally had a program written in Delphi, but I was having problems with sharing database access on a network (I didn't have the time to program a client/server based program, I was just accessing the database files over a network share). So I started looking at other options, and I thought about a web-based application, based on my little experience with ColdFusion. I decided to look at PHP, since it is free, and I can use the same code on both Windows and Linux.
After I re-created my entire delphi application (which took me about 2 months) in 2 weeks (with no previous PHP experience) I was hooked.. I started with MySQL, but I had the same problem, didn't like the idea of doing it text-based, so I went to ODBC/Access.
Since then, I have started working for a company as a PHP programmer, and am forced to use MySQL since we're running a Linux server. With phpMyAdmin (www.phpwizard.net), I get a very nice graphical interface that I can access from anywhere.
Today, I installed it at home, and started porting my access database to MySQL. It took me about 30 minutes to do the 15 or so tables. I don't have any real data on my development system, but I can get text files from access pretty easily, and I've imported text files into MySQL before, and it works pretty well.
My biggest problem was converting my odbc code to mysql code (odbc_pconnect -> mysql_pconnect).. the longest one was odbc_exec($cid, $query) to mysql_db_query($databse, $query, $cid), and any calls like:
$result = odbc_exec($cid, "select..");
$var = odbc_result($result, "field");
which had to be changed to:
$result = mysql_db_query($db, "select..", $cid);
$row = mysql_fetch_array($result);
$var = $row["field"];
One of the other great things about MySQL is that I can get structure dumps (phpMyAdmin helps with that) that can be used to create the tables. My program is modular - modules can be added on and automatically recognized, but since I was using Access, I had to manually import tables into the Access database using MS Access. Now I can import the tables into MySQL using the command line (ie from an install program) without any user intervention.
It's a switch that is definatly worth the effort, since now I have the multi-platform option again (which was one of my original reasons for switching) and MySQL is faster and cheaper to implement than Access.
ttyl, greg