溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL 8.0新特性概覽

發(fā)布時間:2020-08-07 21:32:03 來源:ITPUB博客 閱讀:119 作者:chenfeng 欄目:MySQL數(shù)據(jù)庫
1.事務性數(shù)據(jù)字典,完全脫離了MyISAM存儲引擎
真正將數(shù)據(jù)字典放到了InnoDB中的一些表中,從此不再需要FRM、TRG、PAR文件啦!Information Schema現(xiàn)在以數(shù)據(jù)字典表的一個視圖出現(xiàn)。原則上可以完全不需要MyISAM數(shù)據(jù)表類型了,所有的系統(tǒng)表都可以放到InnoDB之中。
2.SQL角色
角色是一系列權限的集合??梢詣?chuàng)建角色,給某個用戶授予和去除角色。這對于權限管理很方便。
utf8mb4字符集將成為默認字符集,并支持Unicode 9
默認字符集將從 latin1 改為 utf8mb4,默認定序collation將從latin1_swedish_ci 改為 utf8mb4_800_ci_ai。
3.不可見索引
可以將一些索引設置為不可見,這樣SQL優(yōu)化器就不會用到它,但是它會繼續(xù)在后臺保持更新。當有需要時,可以隨時恢復可見。
對二進制數(shù)據(jù)可以進行位操作
不僅僅可以對 BIGINT進行位操作,從8.0開始也支持對 [VAR]BINARY/[TINY|MEDIUM|LONG]BLOB進行位操作了。
4.改進了對IPv6和UUID的操作
INET6_ATON() 和 INET6_NTOA() 現(xiàn)在可以進行位操作了,因為INET6_ATON()現(xiàn)在返回的是VARBINARY(16) 數(shù)據(jù)類型(128位)。改進了UUID操作,引入了三個新的函數(shù) UUID_TO_BIN(), BIN_TO_UUID()和 IS_UUID() 。MySQL并沒有特殊的IPv6和UUID數(shù)據(jù)類型,而是以VARBINARY(16) 數(shù)據(jù)類型保存的。
5.持續(xù)性的全局變量
可以用 SET PERSIST 來設置持久性的全局變量,即便服務器重啟也會保持下來。
性能數(shù)據(jù)庫Performance Schema的改進
比如對性能數(shù)據(jù)庫增加了100多個索引,可以檢索更快。
6.重構SQL分析器
持續(xù)不斷的逐步改進SQL分析器。舊的分析器由于其語法復雜性和自頂向下的分析方式從而有嚴重的限制,導致難以維護和擴展。
7.成本模型
InnoDB緩沖區(qū)現(xiàn)在可以估算主內存緩存區(qū)中的有多少表和索引,這可以讓優(yōu)化器選擇訪問方式時知道數(shù)據(jù)是否可以存儲在內存中還是必須存儲到磁盤上。
8.直方圖Histograms
通過使用直方圖,用戶或DBA可以對數(shù)據(jù)分布進行統(tǒng)計,這可以用于查詢優(yōu)化以尋找優(yōu)化的查詢方案。
9.改進掃描性能
改進了InnoDB范圍查詢的性能,可提升全表查詢和范圍查詢 5-20%的性能。
10.重構BLOB
重構BLOB加速了片段讀取/更新操作,可以加速JSON數(shù)據(jù)的操作。
11.持久化自增值
InnoDB會持久化保持自增序列的最大值到redo日志中。這個改進還修復了一個非常老的199號bug。
12.臨時表
取消對壓縮臨時表的支持,并存儲臨時表的元數(shù)據(jù)到內存中。


從MySQL8.0以后,我們可以發(fā)現(xiàn)MySQL做的越來越像Oracle了。
向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI