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

Reply via email to