MySQL8.0.3 RC版即將發布 先來看看有哪些變化

分類:IT技術 時間:2017-09-25

mysql 8.0.3 即將發布,一起看看有什麽新變化吧

MySQL 8.0.3 即將發布 RC 版本,這預示著 8.0 版本離 GA 越來越近了。

下面分享一下 8.0.3 版本的一些重要新特性、新變化:

1.直接廢除 query cache(應該只是關閉入口,自行編譯源碼的話,還能再次啟用)

2.查詢優化器支持直接在 SQL 中利用 SET_VAR 這個 HINT 語法修改某些會話級的選項,比如:

- SELECT /*+ SET_VAR (sort_buffer_size = 16M) */ name FROM people ORDER BY name;

- INSERT /*+ SET_VAR (foreign_key_checks=OFF) */ INTO t2 VALUES (2);

(這個功能超級實用啊,直接在 SQL 內可以修改了,都不用再寫一個 SQL,而且還擔心會影響別人)

3.查詢優化器現在支持將各個列統計結果直方圖存儲在 column_statistics 數據字典中,以便構造執行計劃。有了這個直方圖,就可用於該列和常量的比較判斷

4.查詢優化器中新增標記位 use_invisible_indexes,用於控制在構造執行計劃時是否考慮不可見索引(invisible indexes)因素

5.InnoDB 新增備份專用鎖,以前 InnoDB 表在線熱備時若同時進行 DML 可能導致 InnoDB 文件的快照不一致,有了這個備份鎖就不用擔心了。備份鎖用法是 LOCK INSTANCE FOR BACKUP、UNLOCK INSTANCE,需要有 BACKUP_ADMIN 權限

6.InnoDB 現在支持表 DDL 的原子性,也就是 InnoDB 表上的 DDL 也可以實現事務完整性了,要麽失敗回滾,要麽成功提交,不至於出現 DDL 時部分成功的問題,此外還支持 crash-safe 特性(這個功能大贊啊)

7.若是延遲初始化組復制(GR,Group Replication),也就是在 single-primary 模式下,輔助節點上可以通過異步復制通道寫入數據,這在正常初始化組復制插件時是不允許的(Bug #26314756,這是個內部 BUG ID,我們看不到的,別費勁了。不過還有萬能的 github 啊,也能看到相關描述,參見:https://github.com/mysql/mysql-server/commit/acbf1d13ecd1d89557f8ca62116f06e8633dc90d)

8.系統庫 INFORMATION_SCHEMA 中的 FILES、PARTITIONS、REFERENTIAL_CONSTRAINTS 等幾個視圖被重新實現了一番(這個沒說太具體,可能和所有的 DDL 都放入 InnoDB 有關系,不再使用 FRM 文件存儲 DDL 信息)

9.由於外鍵約束鎖功能改造,涉及到外鍵約束的父表上的列改名功能將暫時被禁用一段時間(估計過幾個小版本就能正常用了)

10.InnoDB 通用表空間新增改名語法:ALTER TABLESPACE ... RENAME TO(作為 MySQL DBA,貌似沒什麽人玩通用表空間,可能從 Oracle DBA 轉過來更習慣使用吧)

11.MySQL 復制的 slave 節點上,log_slave_updates 選項默認值改為 ON(這個也是比較實用,方便將該 slave 直接作為中繼節點使用)

12.選項 sql_log_bin 的全局作用域被改成回話級作用域,也就是修改本選項只影響本會話,不再影響全局(這個選項一般也是在會話級使用)

13.選項 max_allowed_packet 的默認值從 4M 提高到 64M(這個貌似比較實在)

14.選項 event_scheduler 的默認值由 OFF 改成 ON,使得默認啟用 event scheduler 功能(我覺得 event 功能挺好的呀,不過貌似沒幾個人使用 event)

15.選項 max_error_count 的默認值從 64 提高到 1024(沒感覺的說)

16.最後一個,utf8mb4 字符集增加俄語的校驗集(新增 utf8mb4_ru_0900_ai_ci、utf8mb4_ru_0900_as_cs 兩種 collations set)

  一起期待 8.0.3 的發布吧!


Tags: 這個 InnoDB 直方圖 支持 備份 優化

文章來源:


ads
ads

相關文章
ads

相關文章

ad