I'm trying to figure out if I should just "go with the flow" on this, or
stick with mysql.
I'm certainly no SQL expert, and don't know anything about the
differences. Just the name, having a "lite" in it suggests that it is
Why does Rails 2 use sqllite by default? Is there something "better"
about it. I guess I'm a member of the "if it aint broke, don't fix it"
Would like to see opinions from a few SQL savvy folks to see if they are
just using the default, or sticking with something else they know.
Would sticking with MySQL be at all likely to spawn incompatibilities
with gems/plugins in the future which might have some sqllite specific
stuff in them? Is it likely that "most developers" will be using
sqllite in the future due to this default change?
If sqllite is a better choice for development or small apps, is it still
a decent choice in production?
I think the reason it's the new default is because nothing has to be
done to set it up - as long as SQLite3 is installed on the OS, there's
nothing else to do to configure it and have it work.
That said, I personally prefer to use the same database as I would use
in production, just to make sure that everything works (and because
sometimes some database-specific SQL is required) so I always force
MySQL when starting a new project. SQLite seems just weird to me.
This is as of Rails 2.0.2. Here's the release notes
"This change comes as SQLite3 is simply an easier out of the box
experience than MySQL. There’s no fussing with GRANTs and creates, the
database is just there. This is especially so under OS X 10.5 Leopard,
which ships with SQLite3 and the driver gems preinstalled as part of
the development kit."