Aurora MySQL 第 3 版與 MySQL 8.0 相容 - Amazon Aurora

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Aurora MySQL 第 3 版與 MySQL 8.0 相容

您可以使用 Aurora MySQL 第 3 版來取得最新的 My SQL相容功能、效能增強功能和錯誤修正。接下來,您可以了解與 MySQL 8.0 相容的 Aurora MySQL 第 3 版。您可以了解如何將叢集和應用程式升級至 Aurora MySQL 第 3 版。

某些 Aurora 功能,例如 Aurora Serverless v2,需要 Aurora MySQL 第 3 版。

來自 MySQL 8.0 Community Edition 的功能

Aurora MySQL 第 3 版的初始版本與 MySQL 8.0.23 Community Edition 相容。我的SQL 8.0 推出數個新功能,包括下列各項:

  • Atomic Data Definition Language (DDL) 支援。如需詳細資訊,請參閱Atomic Data Definition Language (DDL) 支援

  • JSON 函數。如需用量資訊,請參閱我的SQL參考手冊 中的JSON函數

  • 視窗函數。如需用量資訊,請參閱我的SQL參考手冊 中的視窗函數

  • 常用資料表表達式 (CTEs),使用 WITH子句。如需用量資訊,請參閱 我的SQL參考手冊 中的 WITH(常見資料表表達)

  • 已針對 ALTER TABLE 陳述式最佳化 ADD COLUMNRENAME COLUMN 子句。這些最佳化稱為「即時」DDL。Aurora MySQL 第 3 版與社群 MySQL Instant DDL 功能相容。不使用先前的 Aurora 快速DDL功能。如需即時 的使用資訊DDL,請參閱 即時 DDL (Aurora MySQL 第 3 版)

  • 遞減索引、功能索引和隱藏索引。如需用量資訊,請參閱我的參考手冊 中的隱形索引 遞減索引 CREATEINDEX陳述式 。 SQL

  • 透過SQL陳述式控制的角色型權限。如需權限模型變更的詳細資訊,請參閱角色型權限模型

  • 搭配 SELECT ... FOR SHARE 陳述式的 NOWAITSKIP LOCKED 子句。這些子句避免等待其他交易釋放資料列鎖定。如需用量資訊,請參閱我的SQL參考手冊中的鎖定讀取

  • 二進位日誌 (binlog) 複寫的改進。如需 Aurora MySQL 的詳細資訊,請參閱 二進位日誌複寫。尤其,您可以執行篩選的複寫。如需篩選複寫的使用資訊,請參閱我的SQL參考手冊 中的伺服器評估複寫篩選規則的方式

  • 提示。有些 MySQL 8.0 相容提示已回溯至 Aurora MySQL 第 2 版。如需搭配 Aurora My 使用提示的資訊SQL,請參閱 Aurora 我的SQL提示。如需社群 MySQL 8.0 中提示的完整清單,請參閱我的SQL參考手冊 中的最佳化工具提示

如需新增至 MySQL 8.0 社群版本的完整功能清單,請參閱部落格文章 MySQL 8.0 中的新功能完整清單。

Aurora MySQL 第 3 版也包含從社群 MySQL 8.0.26 回溯的包容性語言關鍵字變更。如需這些變更的詳細資訊,請參閱Aurora MySQL 第 3 版包含的語言變更

Aurora MySQL Serverless v2 的 Aurora MySQL 第 3 版先決條件

Aurora MySQL 第 3 版是 Aurora MySQL Serverless v2 叢集中所有資料庫執行個體的先決條件。Aurora MySQL Serverless v2 包含對資料庫叢集中讀取器執行個體的支援,以及其他 Aurora MySQL Serverless v1 無法使用的 Aurora 功能。與 Aurora MySQL Serverless v1 相比,它也有更快且更精細的擴展。

Aurora MySQL 第 3 版的版本備註

如需所有 Aurora MySQL 第 3 版的版本備註,請參閱 Aurora MySQL 版本備註中的 Amazon Aurora My 第 3 版資料庫引擎更新SQL

新的平行查詢最佳化

Aurora 平行查詢最佳化現在適用於更多SQL操作:

  • 平行查詢現在適用於包含資料類型 TEXTBLOBJSONGEOMETRYVARCHAR,以及 CHAR (長度超過 768 個位元組) 的資料表。

  • 平行查詢可以最佳化涉及分割資料表的查詢。

  • 平行查詢可以最佳化查詢,其中涉及選取清單中的彙總函數呼叫,以及 HAVING 子句。

如需這些增強功能的詳細資訊,請參閱將 parallel 查詢叢集升級至 Aurora 我的SQL版本 3。如需 Aurora 平行查詢的一般資訊,請參閱Amazon Aurora 我的並行查詢 SQL

最佳化以減少資料庫重新啟動時間

您的 Aurora MySQL 資料庫叢集在計劃內和計劃外中斷期間必須具有高度可用性。

資料庫管理員需要偶爾執行資料庫維護。此維護包括資料庫修補、升級、需要手動重新開機的資料庫參數修改、執行容錯移轉以減少執行個體類別變更所需的時間等等。這些計劃的動作需要停機。

不過,停機時間也可能是因為意外的動作造成,例如因為基礎硬體故障或資料庫資源限流而導致意外的容錯移轉。所有這些計劃和未計劃的動作都會導致資料庫重新啟動。

在 Aurora MySQL 3.05 版及更新版本中,我們引進了可縮短資料庫重新啟動時間的最佳化功能。與沒有最佳化相比,這些最佳化可減少多達 65% 的停機時間,並且在重新啟動後減少資料庫工作負載的中斷情況。

在資料庫啟動期間,會初始化許多內部記憶體元件。其中最大的是 InnoDB 緩衝集區 ,在 Aurora MySQL 中,預設是執行個體記憶體大小的 75%。我們的測試發現初始化時間與 InnoDB 緩衝池的大小成正比,因此可以隨著資料庫執行個體類別大小進行擴展。在此初始化階段,資料庫無法接受連線,這會在重新啟動期間造成較長的停機時間。Aurora MySQL 快速重新啟動的第一個階段會最佳化緩衝集區初始化,從而縮短資料庫初始化的時間,進而縮短整體重新啟動時間。

如需詳細資訊,請參閱 部落格 使用 Amazon Aurora MySQL 資料庫重新啟動時間最佳化來減少停機時間。