Here's the background to my problem:
My client has an Access XP database front-end with Access tables residing on a server directory for the 'back-end'. The database performs three primary funtions; Memership Tracking, Trip Planning and Accounting (General Ledger, General Journal, Payables, Receivables, Trip Costing and Financial Reporting/Analysis). It was originally written in Access 97 to replace a small mainframe application that was being retired due to Y2K issues (and the owner 'getting out of the business'). It has since grown from a single primary user, to an inter-office application that serves anywhere from three to twelve concurrent users, with some reporting done through and intranet web site. I am the third developer of this application and have nurtured it from a rough beginning to its current state. Stability, security, performance and the desire to share more of the information stored in the database on a public web site are all issues that have forced my client to commit to scaling this application up.
The decision was made to use open source alternatives whereever possible. Here's the path I have chosen to solve a similar problem to yours:
1.Convert the access tables to MySQL running on Linux (RHES4) by using the conversion program Acces-to-MySQL (www.convert-in.com). This does a nice job of converting data-types and data, and made this part of the project a snap.
2.Next, I connected the Access front-end to the MySQL server with the MyODBC connector. I had to rewrite portions of the application to use the MyODBC connector to achieve compatibility. This has taken a bit of work, ODBC use in Access has some quirks that I have not encountered before (Say it with me, ?Google is your friend!?)
3.Since the plan is to get away totally from Access (and all its baggage), this is a stop-gap measure. Since it's the most frequently used aspect, I'm currently rewriting the Memership Tracking portion of the database as a web-app using Java with Apache technologies (Apache Web Server, Tomcat, JSP/JSF, JDBC).
4.After the Membership portion is complete, I will be re-writing the rest of the Access front-end in Java using Swing and Netbeans as the core of the project. This is the part of the project that I anticipate will take the most time. Since my client is committed to getting away from using proprietary technologies whereever possible (they have Windows and Mac OSX desktops, and are evaluating Linux as alternatives), they want to be sure they won't run into the same problems they had with mainframe.
So far, the web-app portion has been coming along fine, and, concurrently, the Swing portion of the application for the Trip Planning app is going faster than I had anticipated (I need to start a blog!).
Anyway, this is one persons solution to what I'm sure will be a growing problem. Good luck with yours!