當前位置:
首頁 > 知識 > MySQL 8更新了什麼?

MySQL 8更新了什麼?

MySQL的第八個版本蓄勢待發,並有望於2018年發布。在MySQL 5.7.9的首個通用版本推出後的28個月內,MySQL 8發布了從8.0.0到8.0.4這五個候選版本。這些發布候選僅針對開發使用,而不應該生產系統中使用。因為這些候選版並不支持版本升級,用戶可能會碰上候選版與一般可用(GA)版間存在數據格式不兼容的問題。

用戶首先可能注意到,在版本號上出現了一個跳躍。這是因為MySQL丟棄了版本6,而將版本7用於企業產品線。

窗口函數(Window Function)是MySQL 8中最令人感興趣的特性。其它一些資料庫引擎中業已實現該特性。窗口函數對一系列查詢行執行聚合運算,並可對每一行聚合周邊的數據而生成結果。

類似於窗函數,遞歸CTE(Common Table Expressions)支持用戶在不使用游標的情況下,執行引用了自身的子查詢。該幻燈片對此特性作了詳細的闡述。

MySQL 8的默認字符集支持也從「Latin1」轉變為「utf8mb4」。utf8mb4支持每個字元使用多至四個位元組。它是很多應用的首選字符集,因為它支持大多數擴展字元序(例如日語所用的utf8mb4_ja_0900_as_cs等)以及emoji字元。在存儲方面,MySQL 8的默認存儲引擎將使用InnoDB。

隱藏索引(Invisible indexes)支持DBA將某個索引設為不被查詢優化器所考慮。該特性用於測試指定的索引對查詢性能的影響情況,並可在對用戶實際啟用該索引前,恢復索引在查詢優化中的可見性。MySQL 8還大幅改進了對JSON的支持,添加了基於路徑查詢參數從JSON欄位中抽取數據的JSON_EXTRACT()函數,以及用於將數據分別組合到JSON數組和對象中的JSON_ARRAYAGG()和JSON_OBJECTAGG()聚合函數。

MySQL 8提供了靈活的角色支持,支持CREATE、DROP和GRANT角色,甚至可將一個角色賦予另一個角色,並可限制MySQL 8中可用的角色對每個會話或主機的可用性。用戶也可以通過調用ROLES_GRAPHML()函數,實現角色的GraphML可視化。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Linux資訊速推 的精彩文章:

Ubuntu 18.10正式開啟:新主題、Android集成、節能優化
OpenBSD 發布 6.3 版,提升安全性與兼容性,改進網路棧

TAG:Linux資訊速推 |