文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (US Ltr) - 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 參考手冊  /  ...  /  NDB Cluster 中不支援或缺少的功能

25.2.7.6 NDB Cluster 中不支援或缺少的功能

其他儲存引擎支援的許多功能,NDB 資料表並不支援。嘗試在 NDB Cluster 中使用這些功能本身並不會造成錯誤;然而,在期望支援或強制執行這些功能的應用程式中可能會發生錯誤。即使 NDB 實際上忽略了這些功能,引用這些功能的陳述式在語法和其他方面仍然必須是有效的。

  • 索引前綴。NDB 資料表不支援索引前綴。如果在使用諸如 CREATE TABLEALTER TABLECREATE INDEX 等陳述式中,索引規格中使用了前綴,則 NDB 不會建立前綴。

    包含索引前綴,且建立或修改 NDB 資料表的陳述式在語法上仍然必須是有效的。例如,無論儲存引擎為何,以下陳述式總是會失敗並顯示錯誤 1089 不正確的前綴鍵;所使用的索引鍵部分不是字串,所使用的長度大於索引鍵部分,或是儲存引擎不支援唯一前綴鍵

    CREATE TABLE t1 (
        c1 INT NOT NULL,
        c2 VARCHAR(100),
        INDEX i1 (c2(500))
    );

    會發生這種情況是因為 SQL 語法規則中規定任何索引的前綴都不能大於其本身。

  • 儲存點與回滾。 儲存點與回滾至儲存點會像在 MyISAM 中一樣被忽略。

  • 提交的持久性。 磁碟上沒有持久的提交。提交會被複寫,但不保證在提交時將日誌刷新到磁碟。

  • 複寫。 不支援基於陳述式的複寫。設定叢集複寫時,請使用 --binlog-format=ROW (或 --binlog-format=MIXED)。如需更多資訊,請參閱第 25.7 節,「NDB Cluster 複寫」

    使用全域交易識別碼 (GTID) 的複寫與 NDB Cluster 不相容,且在 NDB Cluster 9.0 中不支援。使用 NDB 儲存引擎時,請勿啟用 GTID,因為這極有可能會造成問題,甚至導致 NDB Cluster 複寫失敗。

    NDB Cluster 不支援半同步複寫。

  • 產生的欄位。NDB 儲存引擎不支援虛擬產生的欄位上的索引。

    如同其他儲存引擎,您可以在儲存的產生的欄位上建立索引,但您應該記住,NDB 除了使用 IndexMemory 來儲存索引外,還使用 DataMemory 來儲存產生的欄位。如需範例,請參閱NDB Cluster 中的 JSON 欄位與間接索引

    NDB Cluster 會將儲存的產生的欄位中的變更寫入二進位日誌,但不會記錄對虛擬欄位所做的變更。這不應影響 NDB Cluster 複寫或 NDB 與其他 MySQL 儲存引擎之間的複寫。

注意

如需有關 NDB 中交易處理限制的更多資訊,請參閱第 25.2.7.3 節,「NDB Cluster 中與交易處理相關的限制」