top
Loading...
7.6.1.1.在Unix上使用針對數據庫的符號鏈接
7.6.1.1. 在Unix上使用針對數據庫的符號鏈接

Unix中,符號鏈接一個數據庫的方法是,首先在一些有空閑空間的硬盤上創建一個目錄,然后從MySQL數據目錄中創建它的一個符號鏈接。

shell> mkdir /dr1/databases/test
shell> ln -s /dr1/databases/test /path/to/datadir

MySQL不支持鏈接一個目錄到多個數據庫。用一個符號鏈接替換一個數據庫目錄,只要你不在數據庫之間制作符號鏈接。假定你有一個數據庫db1MySQL數據目錄下,然后生成一個符號鏈接db2指向 db1

shell> cd /path/to/datadir
shell> ln -s db1 db2

對于db1中的任何表tbl_a,在db2也出現并且還是表tbl_a。如果一個客戶更新db1.tbl_a并且另一個客戶更新db2.tbl_a,可能會出現問題。

然而,如果你真的需要這樣做,可以通過改變源文件mysys/my_symlink.c來實現,在該文件中你應查找下面的語句:

if (!(MyFlags & MY_RESOLVE_LINK) ||

    (!lstat(filename,&stat_buff) && S_ISLNK(stat_buff.st_mode)))

將該語句修改為:

if (1)

請注意,對于所有的Windows服務器,默認啟用符號鏈接支持。

作者:mysql.com
來源:http://dev.mysql.com/doc/refman/5.1/zh/optimization.html
北斗有巢氏 有巢氏北斗