Sheeri K. Cabral wrote:
On 12/17/08, *Tim Soderstrom* <[email protected]
<mailto:[email protected]>> wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Dec 16, 2008, at 6:22 PM, Stewart Smith wrote:
But at some point "soon", CREATE DATABASE will *not* map to mkdir.
possibly we should even move to having each engine have a subdir in
datadir for their own stuff so as to not get in the way of each
other...
+1
I definitely agree that databases should be decoupled from
directories, and that engines should have places to put stuff. I
logged a feature request bug for MySQL (41306) on this issue in case
anyone wants to se my crazy hair-brained ideas about that :) I think
having an engine have it's own subdir (say $datadir/engines/$engine)
is almost more important even. Otherwise, $datadir is just going to
get trashed with all sorts of random files; or it will become more
confusing to have to track which files go to which engine that could
live anywhere on the file-system.
While I agree with this, one of the benefits of auto-discovery (with
rules such as databases) is that databases and tables that do not rely
on centralized information (such as MyISAM) can be easily transferred to
another machine. Lots of people using innodb_file_per_table want the
easy ability to copy a single table or a few tables to another file,
like they can with MyISAM tables.
I'm not sure that both can be done, unless there could be an easy way to
export data dictionary/metadata information on a table basis (ie, in an
innodb model, copy a few tables' .frm and .ibd files, and export an
ibdata file with the centralized info for just those tables).
Storing meta-data, record data and index data in one file would be the
optimal solution, then. When importing, the server data dictionary can
synchronize with the embedded information in the file.
Preserving referential integrity can be hard, though...
Thanks,
Roy
_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help : https://help.launchpad.net/ListHelp