Copyright (C) 2000-2012 |
GNU Info (mysql.info)Symbolic links to databasesUsing Symbolic Links for Databases .................................. The way to symlink a database is to first create a directory on some disk where you have free space and then create a symlink to it from the MySQL database directory. shell> mkdir /dr1/databases/test shell> ln -s /dr1/databases/test mysqld-datadir MySQL doesn't support that you link one directory to multiple databases. Replacing a database directory with a symbolic link will work fine as long as you don't make a symbolic link between databases. Suppose you have a database `db1' under the MySQL data directory, and then make a symlink `db2' that points to `db1': shell> cd /path/to/datadir shell> ln -s db1 db2 Now, for any table `tbl_a' in `db1', there also appears to be a table `tbl_a' in `db2'. If one thread updates `db1.tbl_a' and another thread updates `db2.tbl_a', there will be problems. If you really need this, you must change the following code in `mysys/mf_format.c': if (flag & 32 || (!lstat(to,&stat_buff) && S_ISLNK(stat_buff.st_mode))) to if (1) On Windows you can use internal symbolic links to directories by compiling MySQL with `-DUSE_SYMDIR'. This allows you to put different databases on different disks. Note: Windows symbolic links. automatically generated by info2www version 1.2.2.9 |