本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Aurora MySQL 資料庫引擎更新 2020-11-10 (2.07.3 版) (已棄用)
版本︰ 2.07.3
Aurora MySQL 2.07.3 已全面推出。Aurora MySQL 2.* 版與 MySQL 5.7 相容,Aurora MySQL 1.* 版則與 MySQL 5.6 相容。
目前支援的 Aurora MySQL 版本包括 1.19.5、1.19.6、1.22.*、1.23.*、2.04.*、2.07.*、2.08.*、2.09.*、2.10.*、3.01.* 和 3.02.*。
您可以從目前支援的 Aurora MySQL 版本將快照還原至 Aurora MySQL 2.07.3。您還可以選擇將現有的 Aurora MySQL 2.* 資料庫叢集升級至 Aurora MySQL 2.07.3。您無法直接將現有的 Aurora MySQL 1.* 叢集升級至 2.07.3;不過,您可以將其快照還原至 Aurora MySQL 2.07.3。
若要使用舊版 Aurora MySQL 建立叢集,請透過 AWS Management Console AWS CLI、 或 RDS API 指定引擎版本。
注意
此版本被指定為長期支援 (LTS) 版本。如需詳細資訊,請參閱《Amazon Aurora 使用者指南》中的 Aurora MySQL 長期支援 (LTS) 版本。
如果您有任何問題或疑慮,可在社群論壇和透過 AWS Support 取得 AWS Support
改善項目
安全性修正︰
修正和其他增強功能,以微調在受管環境中的處理。
不相容的變更:
此版本引入了會影響 mysqldump
命令行為的許可變更。使用者必須具有存取 PROCESS
表格的 INFORMATION_SCHEMA.FILES
權限。若要在沒有任何變更的情況下執行 mysqldump
命令,請將 PROCESS
權限授予給 mysqldump
命令連線的資料庫使用者。您也可以使用 mysqldump
選項執行 --no-tablespaces
命令。使用該選項,mysqldump
輸出不包含任何 CREATE LOGFILE GROUP
或 CREATE TABLESPACE
陳述式。在這種情況下,mysqldump
命令不會存取 INFORMATION_SCHEMA.FILES
表格,並且您不需要授予 PROCESS
許可。
可用性改進項目:
-
修正了鎖定管理員的連線/查詢停止與工作階段終止導致資料庫重新啟動之間的競爭條件。
-
修正了在啟用查詢快取的情況下,執行存取多個資料表或資料庫的多查詢陳述式後,導致資料庫重新啟動的問題。
-
修正了由於使用次要索引更新虛擬資料欄而導致重複重新啟動的問題。
MySQL 社群版錯誤修正整合
-
InnoDB:在主機的 XA 準備階段成功執行的並發 XA 交易,在從機上重新執行時發生衝突,導致套用者執行緒中的鎖定等待逾時。之所以發生衝突,是因為當交易在從機上重新執行時,GAP 鎖定範圍不同。為了避免這種類型的衝突,當 XA 交易到達準備階段時,在 READ COMMITTED
隔離層級的 XA 交易所採取的 GAP 鎖定現在會釋放 (並不再繼承)。(錯誤編號 27189701、錯誤編號 25866046) -
InnoDB:在使用 READ COMMITTED
隔離層級時,外部金鑰驗證期間不必要地採取間隙鎖定。(錯誤編號 25082593) -
複寫:使用 XA 交易時,如果複寫從機上的套用者 (SQL) 執行緒發生鎖定等待逾時或死鎖,則自動重試無法運作。原因是,雖然 SQL 執行緒會執行復原,但不會復原 XA 事務。這表示重試交易時,第一個事件是 XA START,因為 XA 交易已經在進行中,因此會無效,導致 XAER_RMFAIL 錯誤。(錯誤編號 24764800)
-
複寫:在交易隔離層級設定為 REPEATABLE READ
時,交錯交易有時可能會死鎖從機套用者。(錯誤編號 25040331) -
複寫:SHOW SLAVE STATUS
陳述式傳回的所有現有轉送日誌檔案 (Relay_Log_Space) 組合總大小的值可能會比轉送日誌檔案使用的實際磁碟空間大得多。輸入/輸出 執行緒在更新值時並未鎖定變數,因此 SQL 執行緒可以在輸入/輸出執行緒完成更新值之前,自動刪除轉送日誌檔案並寫入減少的值。然後輸入/輸出執行緒會編寫其原始大小計算,忽略 SQL 執行緒的更新,進而重新新增已刪除檔案的空間。Relay_log_Space 值現在會在更新期間鎖定,以防止並行更新並確保正確的計算。(錯誤編號 26997096、錯誤編號 87832) -
對於 INSERT
陳述式,VALUES 清單使用包含聯結的子查詢產生第二個或更新資料列的值,伺服器則可能會在解析所需權限失敗後結束。(錯誤編號 23762382) -
對於具有預設值為 CURRENT_TIMESTAMP
的 TIMESTAMP 或 DATETIME 資料欄的資料表,如果該資料表有 BEFORE INSERT
觸發程序,則該資料欄可初始化為0000-00-00 00:00:00
。(錯誤編號 25209512、錯誤編號 84077) -
由於多個執行緒同時嘗試登錄和取消登錄中繼資料效能結構描述物件,可能會導致伺服器結束。(錯誤編號 26502135)
-
執行存放程式 (其中包含從某些 SELECT
陳述式內容建立資料表的陳述式),可能會導致記憶體流失。(錯誤編號 25586773) -
執行包含存取檢視之查詢的存放程序,可能會配置在工作階段結束之前未釋放的記憶體。(錯誤編號 25053286)
-
子查詢實體化的某些情況可能會導致伺服器結束。這些查詢現在會產生一個錯誤,建議停用實體化。(錯誤編號 26402045)
-
如果使用聯結緩衝 (例如,使用區塊巢狀迴圈演算法),具有許多左聯結的查詢會很慢。(錯誤編號 18898433、錯誤編號 72854)
-
最佳化工具在對第二個資料欄執行具有
LIKE
子句的內部聯接時,跳過複合索引中的第二個資料欄。(錯誤編號 28086754)
與 Aurora MySQL 第 1 版比較
下列 Amazon Aurora MySQL 功能在 Aurora MySQL 第 1 版 (與 MySQL 5.6 相容) 中有支援,但目前這些功能在 Aurora MySQL 第 2 版 (與 MySQL 5.7 相容) 中不支援。
-
非同步索引鍵預先提取 (AKP)。如需詳細資訊,請參閱《Amazon Aurora 使用者指南》中的使用非同步索引鍵預先擷取最佳化 Aurora 編製索引的聯結查詢。
-
雜湊聯結。如需詳細資訊,請參閱《Amazon Aurora 使用者指南》中的使用雜湊聯結最佳化大型 Aurora MySQL 聯結查詢。
-
用於同步調用函數的原生 AWS Lambda 函數。如需詳細資訊,請參閱《Amazon Aurora 使用者指南》中的使用 Aurora MySQL 原生函數調用 Lambda 函數。
-
掃描批次處理。如需更多詳細資訊,請參閱 Aurora MySQL 資料庫引擎更新 2017-12-11 (1.16 版) (已棄用)。
-
使用 Amazon S3 儲存貯體從 MySQL 遷移資料。如需詳細資訊,請參閱《Amazon Aurora 使用者指南》中的使用 Amazon S3 儲存貯體遷移 MySQL 中的資料。
MySQL 5.7 相容性
此 Aurora MySQL 版本有 MySQL 5.7 線路相容性,包括 JSON 支援、空間索引和產生欄位等功能。相較於 MySQL 5.7,Aurora MySQL 採用的空間索引原生實作主要利用 Z 階曲線,可為空間資料集提供超過 20 倍的寫入效能和超過 10 倍的讀取效能。
此 Aurora MySQL 版本目前不支援下列 MySQL 5.7 功能:
-
群組複寫外掛程式
-
已增加的頁面大小
-
啟動時載入 InnoDB 緩衝集區
-
InnoDB 全文剖析器外掛程式
-
多來源複寫
-
線上緩衝集區大小調整
-
密碼驗證外掛程式
-
查詢重寫外掛程式
-
複寫篩選
-
CREATE TABLESPACE
SQL 陳述式