Are there any DB engines that are implemented entirely in .NET and Mono compatible? I would like to have a DB solution that will run on all platforms via Mono so that I don't have to worry about having separate native binaries for each platform.
I read a short time ago that there is now a .NET port of HSQLDB (a 100% Java database, I would assume that a .NET port is 100% .NET code). The web site seems to be down right now but you should take a look at it.
db4o is an object database engine (written in both Java and C#) that compiles/runs smoothly under Mono.
VistaDB is fully .NET and supported on Mono. You can embed your DB server into your app with it so there's no extra setup the only issue is this isn't a free product.
Firebird has a .NET version, and is opensource, which runs on Mono as well. There's also a Lucene adaptor for it incase you want to use that for searches.
Can also give this page a look that lists the supported data providers etc. under Mono
SQLite isn't written in .NET, but there is a .NET adapter (with linq to entities support), and it is portable to all platforms you're likely to consider (it's used for instance in firefox, safari, adobe lightroom, apple's aperture and skype). If you're looking for a proven, widely adopted, open-license db, it's a good contender.
However, db4o is certainly a good alternative to be mentioned, particularly since it integrates so easily into an OO environment (which sql-based db's tend not to).
You can check new EffiProz Mono release http://www.effiproz.com/product_mo.aspx