MySQL 5.7 新時代
內容來源:2017年2月26日,葉金榮在“OSC源創會福州站”進行《MySQL 5.7新時代》演講分享。IT大咖說作為獨家視頻合作方,經主辦方和講者審閱授權發布。
閱讀字數:1132 | 4分鍾閱讀
嘉賓演講視頻地址:https://t.cn/RK7Ncl0
MySQL5.7新氣象
2013.4.23發布了MySQL5.7.1,距今已有4年了。它最主要的幾個特性,一是性能上提升、InnoDB方麵的性能提升,還有複製極大增強,以及查詢優化器開始支持基於代價的規則。
並原生支持JSON。
Performance_Schema增加了眾多信息。
新增sys schema,管理更方便了。
安全性提升。
GIS增強。
性能增強
這是5.7和5.5和5.6的性能對比,可以看到5.7的性能強悍多了,尤其是在高並發場景下。
優化器增強
5.7版本在查詢過程中可以增加很多關鍵字,避開某些執行計劃方麵的坑。
InnoDB引擎
最矚目的無疑是可以在線修改InnoDB Buffer Pool,由小改大幾乎沒有影響,由大改小隻需要釋放部分內存,影響也不大,可做到秒級完成。
InnoDB Buffer dump and load增強。
Temporary table增強。5.7版本InnoDB的臨時表可以單獨放在自己的臨時表空間裏,此外臨時表不會再記錄redo。
Online DDL增強,在線增加VARCHAR列長度。在不跨越255字節長度的前提下,可以把字節數直接進行在線調整。增加VARCHAR長度幾乎無額外代價。
InnoDB Monitor取消innodb_xx_monitor機製,改成另外兩個選項控製。
支持更多page_cleaner線程提升purge效率。
表空間文件遷移增強,增加對分區表空間文件支持。
自動檢測設備是否支持原子寫,確認後關閉double writebuffer。
索引更新效率提升3倍以上。
InnoDB表分區性能提升,尤其是在有大量分區情況,且內存消耗更少。
支持spatial indexes,檢索更精確。
透明data page壓縮,壓縮比變化不大,但讀取效率高多了。(尤其是在慢速I/O設備上)
MySQL複製
真正實現多線程並發複製。
多源複製。把多個主服務器上的數據複製到從服務器上,這樣的好處就是可以做到數據匯總,在數據分析業務場景中非常實用,也可以提高服務器資源利用率。
複製性能提升。減少master上的dump thread並發鎖,提高並發率。
半同步複製更可靠更靈活。接收、發送信號線程分離(串行變並行),提高複製效率。
組複製類似PXC架構,可以實現多節點同時寫入,同時提供讀寫均衡。
複製管理更方便。無需完全停止所有SLAVE線程即可在線執行CHANGE MASTER TO。可在線修改REPLICATION FILTER規則。執行SHOW SLAVE STATUS無鎖,不再被阻塞。
Mysqlbinlog解析binlog同時支持rewrite規則。
PERFORMANCE_SCHEMA
內存統計視圖有助於更快理解內存分配情況,以及找到內存泄露原因。
通過事務相關圖,可以看到事務延遲,事務隔離級別,是否自動提交以及GTID信息。
MySQL複製相關圖可以看到複製相關信息,可以取代SHOW SLAVE STATUS。
SYS Schema
從SYS Schema可以快速獲取鎖等待、內存分配和SQL統計。
查看I/O讀寫最多的文件。
查看熱門SQL top10。
安全性
數據庫安全增強。
初始化時采用隨機密碼。
隻創建root@localhost賬號,再也沒有匿名賬號。
不創建test庫。
設置密碼有效期,過期不予連接。
密碼過期或首次登錄需要設置新密碼。
今天的分享到此結束,謝謝大家!
最後更新:2017-08-13 22:22:51