文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  在 Unix 上為 MyISAM 表格使用符號連結

10.12.2.2 在 Unix 上為 MyISAM 表格使用符號連結

注意

此處所述的符號連結支援,以及控制它的 --symbolic-links 選項已過時;預計在未來版本的 MySQL 中移除這些。此外,該選項預設為停用。

符號連結僅完全支援 MyISAM 表格。對於其他儲存引擎的表格使用的檔案,如果您嘗試使用符號連結,可能會遇到奇怪的問題。對於 InnoDB 表格,請改用 第 17.6.1.2 節 「外部建立表格」 中解釋的替代技術。

不要在沒有完全運作的 realpath() 呼叫的系統上符號連結表格。(Linux 和 Solaris 支援 realpath())。若要判斷您的系統是否支援符號連結,請使用此陳述式檢查 have_symlink 系統變數的值

SHOW VARIABLES LIKE 'have_symlink';

處理 MyISAM 表格的符號連結方式如下

  • 在資料目錄中,您永遠會有資料 (.MYD) 檔案和索引 (.MYI) 檔案。資料檔案和索引檔案可以移動到其他位置,並在資料目錄中由符號連結取代。

  • 您可以獨立地將資料檔案和索引檔案符號連結到不同的目錄。

  • 若要指示執行中的 MySQL 伺服器執行符號連結,請使用 CREATE TABLEDATA DIRECTORYINDEX DIRECTORY 選項。請參閱 第 15.1.20 節 「CREATE TABLE 陳述式」。或者,如果 mysqld 未執行,則可以使用指令列中的 ln -s 手動完成符號連結。

    注意

    DATA DIRECTORYINDEX DIRECTORY 選項之一或兩者搭配使用的路徑可能不包含 MySQL data 目錄。(錯誤 #32167)

  • myisamchk 不會將符號連結替換為資料檔或索引檔。它會直接對符號連結指向的檔案進行操作。任何暫存檔都會在資料檔或索引檔所在的目錄中建立。 ALTER TABLEOPTIMIZE TABLEREPAIR TABLE 語法也是如此。

  • 注意

    當您刪除使用符號連結的表格時,符號連結和符號連結指向的檔案都會被刪除。這是一個非常好的理由,要以 root 作業系統使用者身分執行 mysqld,或允許作業系統使用者對 MySQL 資料庫目錄具有寫入權限。

  • 如果您使用 ALTER TABLE ... RENAMERENAME TABLE 重新命名表格,且您沒有將表格移動到另一個資料庫,則資料庫目錄中的符號連結會重新命名為新的名稱,並且資料檔和索引檔也會相應地重新命名。

  • 如果您使用 ALTER TABLE ... RENAMERENAME TABLE 將表格移動到另一個資料庫,則表格會移動到另一個資料庫目錄。如果表格名稱已變更,則新資料庫目錄中的符號連結會重新命名為新名稱,並且資料檔和索引檔也會相應地重新命名。

  • 如果您未使用符號連結,請使用 --skip-symbolic-links 選項啟動 mysqld,以確保沒有人可以使用 mysqld 來刪除或重新命名資料目錄之外的檔案。

不支援這些表格符號連結操作。

  • ALTER TABLE 會忽略 DATA DIRECTORYINDEX DIRECTORY 表格選項。